Before you can build CXF, you'll need to first check it out from the Source Repository. Then you'll need to install Maven 2.0.x
.
Building CXF
Before building CXF, you need to setup an environment variable to give maven more memory:
On 64bit platforms (64bit Linux and Solaris are known to require this), you also need to increase the PermGen space:
export MAVEN_OPTS="-XX:MaxPermSize=128m -Xmx512M"
To build CXF simply execute:
To build CXF without running checkstyle do:
To build CXF without running checkstyle or the tests do:
Building releasable/testable kits
The "distribution" stuff is in the distribution module. After building all the stuff above, you can go into the distribution subdirectory and run:
and that will build both a src kit and a binary kit in target. Alternatively, top level, you can run:
$ mvn install -Peverything
which will cause EVERYTHING to build in one shot.
Deploying snapshots
To deploy a snapshot (apache commiters only), run
That will deploy the latest snapshot along with the javadoc and source jar bundles to apaches snapshot repository. After deploying the snapshot, you need to login to people.apache.org and fix the permissions. cd to /www/people.apache.org/repo/m2-snapshot-repositroy and run the fix-permissions.sh script.
Setting up Eclipse
To setup eclipse for CXF, you'll want to check to set up a separate directory /outside of your workspace/. Here is an example of how it might be done:
[/home/joe]$ mkdir /home/dan/cxf
[/home/joe]$ cd cxf
[/home/joe/cxf]$ svn co https:[/home/joe/cxf]$ cd trunk
[/home/joe/cxf/trunk]$ mvn -Pfastinstall
[/home/joe/cxf/trunk]$ mvn -Psetup.eclipse
Once that is done, start up eclipse and set your workspace to "/home/joe/cxf/workspace". You'll then want to import all the CXF modules into eclipse. This can be done by doing:
- File->Import
- Select General->Existing Projects into Workspace
- Enter "/home/joe/cxf/trunk" as the root directory
- Click "Finish"
Performing a release
For the most part, we now follow the same instructions that the maven team uses.
http://maven.apache.org/developers/release/releasing.html![]()
Basically, setup your settings.xml file as they described except for your gpg key. The version of the gpg plugin we use will ask for it. The deploy.altRepository should be set to something similar to:
After that is setup, you should just need to run
mvn release:prepare -Peverything
mvn release:perform
That will tag the release, update the poms, etc... Then build it (off the tag) and deploy everything (including source jars and javadoc jars) to the deploy.altRepository location and gpg signs everything. Once there, call the vote(s) based on that.
After the vote passes, you'll need to "merge" that staging location to the main location. (I'm waiting for docs on the repository-tools plugin that handles this step)