We ran into an issue today where someone uploaded a bad version of a POM to the JBoss "thirdparty-uploads" repository.  This was taking priority over the correct POM in central, and causing build issues.  So here are some quick rules about how to correctly deploy to the JBoss Nexus repository.

 

Deploying a JBoss Project Release

If you are a developer of a JBoss project and you are uploading a project release you should upload to the staging URL

 

https://repository.jboss.org/nexus/service/local/staging/deploy/maven2/

More information is available on the page Maven Deploying a Release

 

Deploying a Thirdparty Project Release

If you are a JBoss developer and you need to patch and rebuild a thirdparty project, from Apache for example, you should follow these steps.

  1. Check out the upstream sources
  2. Apply any required patches (these should also be submitted to the upstream project, if possible)
  3. Add a jbossorg qualifier to the version in the POM (see Maven Deploying a Thirdparty Release )
  4. Deploy the artifact(s) the same way JBoss releases are deployed.  Nexus will automatically stage these artifacts to go to the "thirdparty-releases" repository based on the Maven groupId.

 

Uploading a Thirdparty Binary Artifact

If you want to make a thirdparty released jar available in the JBoss repository, you should first check if the jar is already available in a thirdparty Maven repo.  If yes, then you can request that a new proxy repository be added to repository.jboss.org using the JBBUILD jira project.  The proxy repository can then be used via one of the main JBoss repo URLs.

 

If it is not available in any repository, then you can upload the artifact by following the instructions in the page Uploading a Thirdparty Artifact