JBoss Community

How to Build JBoss Tools with Maven 3

created by Nick Boldt in JBoss Tools Development - View the full document

This article is a replacement for its precursor, How to Build JBoss Tools 3.2 with Maven 3.

 

To run a local build of JBoss Tools 3.3 against the new Eclipse 3.7-based Target Platform, I suggest a three-step approach:

 

a) build the parent & target platform poms (v0.0.3-SNAPSHOT)

b) resolve the target platform to your local disk

c) build against your local copy of the target platform

 

Once (a) and (b) are done, you need only perform (c) iteratively until you're happy (that is, until everything compiles). This lets you test changes locally before committing back to SVN.

 

(a) and (b) need only be done when the parent pom and Target Platform (TP) change. Of course if we get these published to nexus then you may not need those first bootstrapping steps. Stay tuned - work in progress.

 

 

a) build the parent & target platform poms (v0.0.3-SNAPSHOT)

 

cd ~/

svn co http://svn.jboss.org/repos/jbosstools/branches/3.3.indigo/

cd ~/3.3.indigo/build/parent

mvn3 clean install

 

 

b) resolve the target platform to your local disk

 

There are two ways to do this:

 

i) Download and unpack the latest TP zip

ii) Resolve the TP using Maven or Ant

 

 

i) Download and unpack the latest TP zip

 

You can either download the TP as a zip [5] and unpack it into some folder on your disk. For convenience, you might want to unzip into ~/3.3.indigo/build/target-platform/REPO/, since that's where the Maven or Ant process will by default operate.

 

[5] http://download.jboss.org/jbosstools/updates/target-platform_3.3.indigo/e37M5-wtp33M5.target.zip

 

 

ii) Resolve the TP using Maven or Ant

 

cd ~/3.3.indigo/build/target-platform

mvn3 clean install -Pget.local.target

 

The get.local.target profile will resolve the target platform file, multiple.target, as a p2 repository on your local disk in ~/3.3.indigo/build/target-platform/REPO/. It may take a while, so you're better off from a speed point-of-view simply fetching the latest zip [5]. However, if you want to see what actually happens to create the TP (as done in Hudson) this is the approach to take.

 

Since the Maven profile is simply a wrapper call to Ant, you can also use Ant 1.7.1 or later directly:

 

cd ~/3.3.indigo/build/target-platform

ant

 

Should you want to build the JBDS target, do this:

 

cd ~/3.3.indigo/build/target-platform

ant jbds

 

Then you'll get a p2 repo in ~/3.3.indigo/build/target-platform/JBDS_REPO/.

 

 

c) build against your local copy of the target platform

 

cd ~/3.3.indigo/build/

mvn3 clean install -U -B -fae -e -Plocal.site -Dlocal.site=file:/${HOME}/3.3.indigo/build/target-platform/REPO/ | tee build.all.log.txt

 

If you downloaded the zip and unpacked is somewhere else, use -Dlocal.site=file:/.../ to point at that folder instead.

Comment by going to Community

Create a new document in JBoss Tools Development at Community