TODO: Update this page to reflect the multi-project build structure we have and to properly discriminate between ServiceMix 3.x, 4.x and 5.x builds
Building ServiceMix From Source
ServiceMix uses Maven as its build and management tool. We have tested the build with Maven 2.0.8 and it works fine, but Maven 2.0.9 is known to cause some issues that prevent a successful build for ServiceMix 3.2.1 and previous versions. This has been fixed for 3.2.2 and 3.3. Be sure to read the FAQ
ServiceMix 4.x requires to use Maven 2.2.1 or better.
Getting started
mvn -Dmaven.test.skip=true -Pstep1 install
mvn -Dmaven.test.skip=true -Pstep2 install
Useful Hints
mvn -Dmaven.test.skip=true -Pstep1,nochecks install
MAVEN_OPTS=-Xmx768m
Some dependencies have POMs that specify repository URLs that are no longer valid. This can cause invalid artifacts to be downloaded to your local repository. You can add the following mirror to your maven settings.xml file to avoid this problem:
<mirror>
<id>servicemix-repo</id>
<name>Apache ServiceMix Repository</name>
<url>http://svn.apache.org/repos/asf/servicemix/m2-repo/</url>
<mirrorOf>servicemix-repo,servicemix-m2-repo</mirrorOf>
</mirror>
Please Note
There is an issue in building if you use the system property style of declaring the profiles (i.e., -Dprofile=step2) as the XFire Maven plugin thinks step2 is a profile name it should use. This is fixed in the ServiceMix trunk (3.3 or greater). To work around this issue, try the following items below: