Разница betwen org.wildfly.bom и org.jboss.spec для Java EE7 с maven
Я работаю над новым проектом, который будет использовать Java EE 7 с WildFly, но я все еще смущен тем, какие зависимости от maven я должен использовать.
Я нашел эти две группы, которые, по-видимому, я могу использовать: org.wildfly.bom и org.jboss.spec
У них есть следующий предопределенный артефакт для использования в проектах (поиск в https://repository.jboss.org/nexus/index.html#welcome):
org.wildfly.bom:
- JBoss-JavaEE-7,0-с-все
- JBoss-JavaEE-7,0-с-спящий режим
- JBoss-JavaEE-7,0-с инструментами
- JBoss-бом-родительская
- JBoss-JavaEE-7,0-с-операций
- JBoss-JavaEE-7,0-с-безопасности
- JBoss-JavaEE-7,0-с-Resteasy
- JBoss-JavaEE-7,0-с-infinispan
- JBoss-JavaEE-7,0-с-hibernate3
org.jboss.spec:
- JBoss-JavaEE-все-7,0
- JBoss-JavaEE-веб-7,0
- JBoss-JavaEE-7.0
Также я понял, что я могу видеть иерархию зависимостей, используя org.jboss.spec, но не с wildfly.bom. Итак, мой вопрос в том, в чем разница?, которую вы предлагаете?
Ответы
Ответ 1
org.wildfly.bom
включает зависимости для версий Hibernate, RESTEasy и т.д., а также их зависимости, которые используются в WildFly. Если вы используете аннотации Jackson2, org.wildfly.bom:jboss-javaee-7.0-with-resteasy
должен содержать правильную версию зависимости Jackson2.
org.jboss.spec
включает только API Java EE 7.
Если вы не используете что-то конкретное для WildFly, я бы использовал спецификацию org.jboss.spec
. Если вы используете что-то конкретное, что включает сервер, например, Jackson2, Infinispan и т.д., Я бы использовал org.wildfly.bom
.