2014-10-15 1 views
0

Как я могу использовать библиотеку зависимостей maven вместо библиотеки Jboss?Как использовать библиотеку maven, а не библиотеку Jboss

У меня есть следующие зависимости в моем файле pom.xml:

<properties> 
    <jsf.version>2.2.8-02</jsf.version> 
</properties> 
... 
<dependencies> 
    <dependency> 
     <groupId>com.sun.faces</groupId> 
     <artifactId>jsf-api</artifactId> 
     <version>${jsf.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>com.sun.faces</groupId> 
     <artifactId>jsf-impl</artifactId> 
     <version>${jsf.version}</version> 
    </dependency> 
</dependencies> 

Но когда я начинаю JBoss AS я получаю следующее сообщение:

09: 49: 57,000 INFO [javax.enterprise. resource.webcontainer.jsf.config] (услуга поток MSC 1-4) Инициализация Mojarra 2.2.6-jbossorg-4 20140501-1134 для контекста ''

Я думаю, что Jboss использует его собственные библиотеки JSF вместо Maven библиотек

То же самое происходит с использованием Jboss AS 7.1.1 и Wildfly 8.1.0. Окончательные версии

+0

Там нет JSF Maven библиотеки. У вас есть то, что ваш контейнер (JBoss, Wildfly) уже предоставляет реализацию JSF, которую вы обычно не должны изменять. Таким образом, вы не должны добавлять реализацию к своим зависимостям или определять «» ' – khmarbaise

+0

@khmarbaise Почему я должен использовать предоставленные? Что оно делает? –

+0

Предоставленный пакет упакует данную зависимость в ваш файл war/ear, потому что он предоставляется целевой средой. – khmarbaise

ответ

0

В качестве альтернативы вы можете сначала изменить политику загрузчика классов от родителя к первому приложению при создании двоичного пакета или настроить его в Jboss.

Это позволит определить ваши прикладные двоичные файлы перед использованием версии JSF из jboss.

В случае WAR приложений нет ничего особенного, что вы можете сделать, чтобы контролировать обнаружение в Maven загрузчика классов, как указано here

 Смежные вопросы

  • Нет связанных вопросов^_^