Question

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?

Était-ce utile?

La solution

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.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top