Version 8

    Getting the JBossRemoting source and building


    The JBossRemoting source code resides in the JBoss Subversion repository under the module jbossremoting.  To check out the source using the anonymous account, use the following command:

    svn co

    To check out the source using a committer user id, use the following:

    svn co

    This should checkout the entire remoting project, including doc, tests, libs, etc.


    See for information about the migration from CVS to Subversion, and for other helpful information about the JBoss Subversion repository.


    The build process for JBossRemoting is based of a standard ant build file (build.xml).  The version of ant that is supported is ant 1.6.2, but should work with earlier versions as there are not special ant features being used.


    The main ant build targets are as follows:


    compile - compiles all the core JBossRemoting classes.


    jars - creates the jboss-remoting.jar file from the compiled classes


    javadoc - creates the javadoc html files for JBossRemoting


    tests.compile - compiles the JBossRemoting test files


    tests.jars - creates the jboss-remoting-tests.jar and jboss-remoting-loading-tests.jar files.


    tests.quick - runs the functional unit tests for JBossRemoting.


    tests - runs all the tests for JBossRemoting to include functional and performance tests for all the different transports.


    clean - removes all the build artifacts and directories.


    most - calls clean then jars target.


    dist - builds the full JBossRemoting distribution including running the full test suite.


    dist.quick - builds the full JBossRemoting distribution, but does not run the test suite.



    The root directory for all build output is the output directory.  Under this directory will be:


    classes - compiled core classes


    etc - deployment and JMX XMBean xml files


    lib - all the jars and war file produced by the build


    tests - contains the compiled test classes and test results



    For most development, the most target can be used.  Please run the tests.quick target before checking anything in to ensure that code changes did not break any previously functioning test.



    Building JBossRemoting using the new JBoss build


    The new JBoss build system is still being developed, so suggest that use the previous build process unless wanting to test out the new build.


    If going to use an IDE (like Intellij or Eclipse), perform all of these steps before creating your jboss remoting project within the IDE. It is suggested to create a new directory, JBossRemoting for example, and change to that directory before executing following steps.


    1. Check out the remoting project from cvs using 'cvs co -d remoting JBossRemoting'. This will create a new 'remoting' directory in your root project directory. This directory contains the JBossRemoting project source files.


    2. Check out the tools project from cvs using 'cvs co tools'. This will create a new 'tools' directory in your root project directory. This directory contains the libraries needed for the jboss build.


    3. Create a file under root remoting directory. Add entry for cvsroot indicating your cvs root. For example:

    where 'joe' is your user name. As it stands now, you will have to have a user id for accessing cvs, as the public anonymous pserver access will not work via the automated build. This also means that you will need ssh-agent setup to run cvs without entering a password. If you can execute steps 1 and 2 via a console without having to enter a password, you are good to go (otherwise will need to get a user id for cvs, which includes posting your public key, and making your private key available to your CVS_RSH).  NOTE: This entry probably doesn't apply now that we're on Subversion...


    4. Go to the remoting directory and run ant -f release.xml synchronize This should pull down all the components needed for build and will create a 'thirdparty' dirctory in your root project directory.


    5. Then run ant -f release.xml build. This will run the build for jboss remoting


    The new build requires a standard structure for the project directories. For JBossRemoting, this meant having to change the structure to comply, so will notice that the JBossRemoting project substructure now complies as follows:

    remoting/src/etc remoting/src/main remoting/src/tests

    Another change was to the actual packaging of the test classes. The standard is to start with org.jboss.test.. Therefore, the remoting tests all fall under the org.jboss.test.remoting package structure.


    6. Run tests

    ant clean most tests.quick