Pregunta

I am working in a new project that is going to use Java EE 7 with WildFly, but I am still confused about which maven dependencies I should use. I have found these two groups that apparently I can use: org.wildfly.bom and org.jboss.spec

They have the following predefined artifact to use in the projects (searched in https://repository.jboss.org/nexus/index.html#welcome):

org.wildfly.bom:

  • jboss-javaee-7.0-with-all
  • jboss-javaee-7.0-with-hibernate
  • jboss-javaee-7.0-with-tools
  • jboss-bom-parent
  • jboss-javaee-7.0-with-transactions
  • jboss-javaee-7.0-with-security
  • jboss-javaee-7.0-with-resteasy
  • jboss-javaee-7.0-with-infinispan
  • jboss-javaee-7.0-with-hibernate3

org.jboss.spec:

  • jboss-javaee-all-7.0
  • jboss-javaee-web-7.0
  • jboss-javaee-7.0

Also I have realized that that I can see dependency Hierarchy using org.jboss.spec but not with wildfly.bom. So, my question is what is the difference?, which one do you suggest?

¿Fue útil?

Solución

The org.wildfly.bom includes dependencies for the versions of Hibernate, RESTEasy, etc. as well as their dependencies that are used in WildFly. For if you use Jackson2 annotations the org.wildfly.bom:jboss-javaee-7.0-with-resteasy should include the correct version of the Jackson2 dependency.

The org.jboss.spec only include the Java EE 7 API's used.

If you're not using anything specific to WildFly then I would use the org.jboss.spec BOM. If you're using something specific that the server includes, like Jackson2, Infinispan, etc., then I'd use the org.wildfly.bom.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top