Skip to end of metadata
Go to start of metadata

Preparations

To build cyklotron, you need to install Apache Maven first. We strongly recommend using the most recent stable version (1.0-rc3, at the time of writing). Building with older version is possible but requires tweaking configuration files, and we will not provide any support in this regard.

Non distributable dependencies

Then you need to download some dependency jars and put it into your local maven repository. On Unix systems it is normally $HOME/.maven/repository/ Consult Maven documentation for more information.

name

url

local repository path

Java Mail 1.3.1

http://java.sun.com/products/javamail/

javamail/jars/mailapi-1.3.1.jar
javamail/jars/smtp-1.3.1.jar

Java Activation Framework 1.0.2

http://java.sun.com/products/javabeans/glasgow/jaf.html

jaf/jars/activation-1.0.2.jar

Java Transaction API 1.0.1b

http://java.sun.com/products/jta

jta/jars/jta-1.0.1b.jar

J2EE Connector Architecture 1.5

http://java.sun.com/j2ee/connector/

connector/jars/connector-1.5.jar

All the remaining dependencies should be dowloaded automatically by Maven. Warning Be prepared that about 20mB of jars will be downloaded during the first build cycle.

Invoking maven

To build all projects comprising a product (ledge, coral or cyklotron), you should enter the corresponding -reactor directory, and in case of release builds execute:

maven multiproject:install

and case of development builds execute:

maven multiproject:install-snapshot

To build a single project enter an apropriate project directory and execute an command apropriate for the project type

project name suffix

release build

development build

-common

-reactor

-webapp

maven war:install

maven war:install-snapshot

-plugin

maven plugin:install

maven plugin:install-snapshot

none of the above

maven jar:install

maven jar:install-snapshot

Annoyed with repeated SNAPSHOT downloads?

Firstly, use a http proxy if you have one narby. It really boosts performance. To configure it, add the following entires into you global build.properties file (username and password are optional, leave them out if you don't need them):

maven.proxy.host=...
maven.proxy.port=...
maven.proxy.username=...
maven.proxy.password=...

Another option is to tell maven that you are working offline. If you wan't to do it just for single run, insert -o as the first argument on the command line. If you want to set it permanently, add the following to your build.propreties file, eiter globally, or in the *-common project directories.

maven.mode.online=false

Installing Eclipse IDE

Go to http://eclipse.org/downloads/index.php and download the latest eclipse-SDK-version-linux-gtk.zip for the stable stream (3.0 at the point of writing). Unzip the archive into /usr/local/eclipse-version.

Create a convenience script ~/bin/eclipse-wrapper that will prevent eclipse from shooting itself in the foot by launching multiple IDE instances on the same workspace.

Then, create a workspace directory, for example ~/eclipse/cyklotron. Put the following launcher script eclipse into the workspace.

note that you can use the same launcher script in any workspace directory (it's common to have many).

Using live assembly

Every time you change cyklotron sources you have to rebuild entire application, generate WAR and restart application context.
For developers such a tomcat configuration is not the best solution.

Labels: