The JBoss Common Project
The common module in JBossAS has been promoted to a standalone project. The project itself has now been and broken up into several projects. The source for these projects is located in the common subversion repository. The jars created by the former common module will now come into JBossAS as thirdparty dependencies. In addition, Maven2 based builds have been set up for each project. For maven information please see http://maven.apache.org
JIRA project page
The jira location for this project is located at http://jira.jboss.com/jira/browse/JBCOMMON
This page details information regarding how to work with the new standalone project.
Repository structure
The subversion repository location for committers is
https://svn.jboss.org/repos/common
Non-committers can obtain the source from
http://anonsvn.jboss.org/repos/common
This repository does not work based off ssh keys. Your username and password are the same as those you use to log into the jboss.com site
Common Project
The common project has been broken up into the following projects:
build - a top level pom.xml/build.xml
common-core - Utility classes https://svn.jboss.org/repos/common/common-core/trunk/
common-logging-spi - The JBoss Logging interface https://svn.jboss.org/repos/common/common-logging-spi/trunk/
common-logging-log4 - the log4j implementation https://svn.jboss.org/repos/common/common-logging-log4j/trunk/
common-logging-jdk - logging jdk classes https://svn.jboss.org/repos/common/common-logging-jdk/trunk/
jbossxb - JBoss XML Binding https://svn.jboss.org/repos/common/jbossxb/trunk/
Checking out and working with the source via commandline
The top level maven pom expects a structure like:
build/pom.xml common-core/pom.xml common-logging-jdk/pom.xml common-logging-spi/pom.xml common-logging-log4j/pom.xml
This can be obtained using:
svn co https://svn.jboss.org/repos/common/build/trunk/ build svn co https://svn.jboss.org/repos/common/common-core/trunk common-core svn co https://svn.jboss.org/repos/common/common-logging-spi/trunk/ common-logging-spi svn co https://svn.jboss.org/repos/common/common-logging-jdk/trunk/ common-logging-jdk svn co https://svn.jboss.org/repos/common/common-logging-log4j/trunk/ common-logging-log4j
To build the source, run mvn install from the build directory with the top level pom.xml.
Some notes about building with maven. First off, you will need to have maven installed on your computer please see the link at the top the page for the download.
Maven works with the concept of lifecyles. You are executing the command 'mvn lifecycle'. See the following for a detailed explanation http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html
Checking out and working with the source via eclipse
This procedure is similiar as the one used for JBossAS.
Checkout the source for your project
In eclipse select window->open perspective->other->subversion repository exploring
In the svn repository tab, right click and select 'New Repository Location'
URL=[https://svn.jboss.org/repos/common/jbossxb/trunk|https://svn.jboss.org/repos/common/jbossxb/trunk]
ROOT URL=[https://svn.jboss.org/repos/common/|https://svn.jboss.org/repos/common/]
Expand the newly created repo and right click on your project
Check out as -> java project -> then give it a name hit ok
Now you have a checkout completed
Let eclipse build your project
Previously we always maintained our own eclipse project files in the scm program.
Maven will generate these for you!
Via command line, cd to your checked out project location
mvn eclipse:eclipse
This generates the .classpath files
Refresh your project in eclipse, the thirdparty dependencies will be added in format $M2_REPO/path/
You will need to setup the $M2_REPO varaiable in your ide
From the menu bar, select Window > Preferences. Select the Java > Build Path > Classpath Variables page.
For windows users the default path is c:\documents and settings\username\.m2\repository
Unix users is in home/user/.m2
You now have a useable project in eclipse
Release procedure
See MavenReleaseProcess.
See JBossCommonCoreReleaseProcess.
Referenced by:
Comments