jbossjboss7.x

Why does the JBoss BOM include versions of dependencies have "-redhat-0000" in the version?


We are migration our application from websphere to jboss 7.4.9. We want to use the dependencies which jboss provides us. So now we thought that we can add something like that into our bom:

<dependency>
    <groupId>com.sun.faces</groupId>
    <artifactId>jsf-impl</artifactId>
    <version>${version.com.sun.faces}</version>
</dependency>

Now one idea was to exactly use the versions which jboss provides. But if you look into the bom of jboss 7.4.9, it looks like those are "special" jboss versions. For example:

<version.com.sun.faces>2.3.14.SP07-redhat-00001</version.com.sun.faces>
<version.com.sun.mail>1.6.7.redhat-00001</version.com.sun.mail>

Why do these dependencies have ...-redhat-00001 in the version? Should we just use 2.3.14.SP07 or 2.3.14.SP07-redhat-00001?


Solution

  • You could use the BOM then you don't need to worry about the dependency version. Those dependencies should be marked as <scope>provided</scope> in your POM anyway so they do not end up in your deployment.

    As to why the versions have -redhat-xxxxx appended. Maven requires the version be unique and those libraries are built from source and go through testing to ensure they are supported. They indicate that the library is a supported library by JBoss EAP.