This page provides some notes about doing maven releases of the jboss javaee project.
Since 2011-AUG-18:
Due to the JBoss Java EE Specs API SVN to Git Migration, the release process instructions will be updated soon.
Since JBoss AS 6.0.0.M3 (March 4, 2010)
All JBoss Java EE API modules can be released singly. However, there is a parent pom which needs to be released first if new modules are added.
Releasing the jboss-specs-parent
The JavaEE API specs project contains a parent pom to allow building all the API modules at once. When the parent pom needs to be released, follow the same mvn plugin:goal commands as shown below and passing in the '-N' and '-Pparent-release' args as shown in the example below.
mvn -N -Pparent-release release:prepare
Releasing JBoss EE API Modules
Each API module set up in this new structure is now able to do independent releases. The maven coordinates for each module should follow these guidelines:
- groupId: Include the Java package name in the groupId
- artifactId: Include the API Specification Version associated to the classes contained in the artifact
- version: the JBoss release version
Example:
<groupId>org.jboss.spec.javax.transaction</groupId>
<artifactId>jboss-transaction-api_1.1_spec</artifactId>
<version>1.0.0.Beta1</version>
Note: If adding a new module, be sure to add it to the jboss-specs-parent pom.
Releasing JBoss Java EE 6.0 Spec
The JBoss Java EE 6.0 spec project is an aggregate of the individual API specification jars that make up Java EE 6.0. This project provides an entry point so that a single dependency can be used to include the appropriate set of spec api jars. dependency-management is used to control the JBoss versions.
First step:
mvn deploy
from the root directory to make sure everything is building and the deploying (including the aggregate which gets deployed to the ant repo). This seemed to go fine.
Next was a dry run of the release prepare
mvn release:prepare -DdryRun=true
Next make sure you clean up any temporary files after the dry run with
mvn release:clean
.
Next
mvn release:prepare
. This is the same as the previous step except that the tag is actually created this time.
The last step is
mvn release:perform
The last step which includes checking in the appropriate jars into the maven repositories.
Referenced by:
Comments