jwma Development - Building from the Source
Main | Deployment | Configuration | Architecture | Development | Screenshots | SF Project Site
Index | Overview | Guidelines | Lists | Building | API Docs | Credits

Obtaining the sources

If you want to build jwma yourself, then you will most likely want to checkout the latest version. The project's SourceForge CVS repository can be checked out through anonymous (pserver) CVS with the following instruction set (when prompted for a password for anonymous, simply press the Enter key):

cvs -d:pserver:anonymous@cvs.jwma.sourceforge.net:/cvsroot/jwma login
cvs -z3 -d:pserver:anonymous@cvs.jwma.sourceforge.net:/cvsroot/jwma co webmail

Updates from within the module's directory do not need the -d parameter. Probably you might want to issue an update with the -P flag to purge empty directories from your working copy.

Alternatively you can download the source distribution package, however, please ensure that you are up to date by checking the mailing list, and the bug tracker for recent changes/bug fixes.


jwma's build procedures are based upon ant, which is a great build tool (in Java) developed and distributed by the Apache Software Foundation. You can find it at:

Ant is integrated, so it comes with the checkout, or the source package you downloaded. With the included build scripts, you can invoke ant from the shell:

./build.sh <build target> (on Unix and Linux platforms)
build.bat <build target> (on Windows platforms)

The command line parameters are passed directly to ant (which allows you to pass some if necessary) and there is an annotated list of available build targets (right below).

Build targets

Target Description
compile(default) Compiles the sources into class files. Note that the buildfile has jikes set as default compiler, if you prefer your JDK's compiler, ensure you have tools.jar in your classpath and replace "jikes" with "modern".
jar Creates a jar file containing all of jwma's class files (including the servlets).
beanjar Creates a jar file containing all model's interfaces. I use this lib for the classpath of the JSP compiler to enforce the separation of view and controller.
javadocs Creates the API documentation using javadoc in docs/api
dist Creates a complete gzipped tarball distribution of jwma.
zipdist Creates a complete zip distribution of jwma.

Creates a WAR distribution of jwma, including the documentation.

clean-classes Cleans up all generated class files.
clean-jars Cleans up generated jar files.
clean-docs Cleans up the api documentation.
clean-dist Cleans up the distributions.
clean-all Cleans up all.

© 2000-2003 jwma team