enable - Diferencia entre org.wildfly.bom y org.jboss.spec para Java EE7 con maven
wildfly jboss (1)
Estoy trabajando en un nuevo proyecto que va a utilizar Java EE 7 con WildFly, pero todavía estoy confundido sobre qué dependencias maven debería utilizar. Encontré estos dos grupos que aparentemente puedo usar: org.wildfly.bom y org.jboss.spec
Tienen el siguiente artefacto predefinido para usar en los proyectos (buscado en https://repository.jboss.org/nexus/index.html#welcome ):
org.wildfly.bom:
- jboss-javaee-7.0-con-todo
- jboss-javaee-7.0-with-hibernate
- jboss-javaee-7.0-con-herramientas
- jboss-bom-parent
- jboss-javaee-7.0-with-transactions
- jboss-javaee-7.0-con-seguridad
- jboss-javaee-7.0-con-resteasy
- jboss-javaee-7.0-con-infinispan
- jboss-javaee-7.0-con-hibernate3
org.jboss.spec:
- jboss-javaee-all-7.0
- jboss-javaee-web-7.0
- jboss-javaee-7.0
También me he dado cuenta de que puedo ver la Jerarquía de dependencia usando org.jboss.spec pero no con wildfly.bom. Entonces, mi pregunta es ¿cuál es la diferencia ?, ¿cuál sugieres?
org.wildfly.bom
incluye dependencias para las versiones de Hibernate, RESTEasy, etc., así como sus dependencias que se usan en WildFly. Si usa las anotaciones de org.wildfly.bom:jboss-javaee-7.0-with-resteasy
, org.wildfly.bom:jboss-javaee-7.0-with-resteasy
debe incluir la versión correcta de la dependencia de Jackson2.
org.jboss.spec
solo incluye las API de Java EE 7 utilizadas.
Si no estás usando nada específico para WildFly, entonces usaría la BOM org.jboss.spec
. Si está utilizando algo específico que incluye el servidor, como Jackson2, Infinispan, etc., entonces usaría org.wildfly.bom
.