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 |
javamail/jars/mailapi-1.3.1.jar |
|
Java Activation Framework 1.0.2 |
jaf/jars/activation-1.0.2.jar |
|
Java Transaction API 1.0.1b |
jta/jars/jta-1.0.1b.jar |
|
J2EE Connector Architecture 1.5 |
connector/jars/connector-1.5.jar |
All the remaining dependencies should be dowloaded automatically by Maven.
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.
