geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject [Apache Geronimo Wiki] New: Building
Date Wed, 28 Apr 2004 22:27:25 GMT
   Date: 2004-04-28T15:27:25
   Editor: <>
   Wiki: Apache Geronimo Wiki
   Page: Building

   no comment

New Page:

This page exists to collect details of problems (and their solutions) in building or running
a fresh copy of Geronimo. This is an add-on to the geronimo distribution file README.txt.
The intention is that it will be the first port of call when such issues arise, and that developers
will update it as problems/solutions are found. Hopefully it will become less necessary as
Geronimo nears a formal release process ;-)

First start with :
 * the default build process available in the Geronimo distribution file README.txt 
 * a list of KnownWorkingConfigurations



= For the impatient ... =

Assuming you have Maven 1.0-RC1 (note that the build doesn't complete with Maven 1.0-rc2)
$ cvs -qz3 co incubator-geronimo
$ cd incubator-geronimo
$ cvs -qz3 update -dP
$ maven
$ java -jar target/bin/server.jar org/apache/geronimo/Server

Run server with the debug console web application 
$ java -jar target/bin/server.jar org/apache/geronimo/DebugConsole

Connect to the debug console:


You should check back here occasionally as things may well change.


= New To Maven? =

You don't build this project with Ant (directly), you build it with Maven.  Maven manages
downloading all the external dependencies for you, as well as handling the large number of
modules to build and then creating one consolidated Geronimo build based on that.

To start with, download maven from then install it and put its bin
directory on your path (or put a script to run it on your path or whatever).

Now to build (and test) Geronimo, go to the geronimo directory you checked out of CVS and
run `maven` (you must be online at the time, so Maven can download all the dependencies of

There are a variety of parameters and options you can pass to maven to affect how it builds.
 Some are listed in the topics below.  If you run `maven -g` you will get a huge list of options,
separated into categories.  To use one, run "maven category:command", so to run the "compile"
command in the "java" category, you'd run `maven java:compile` (and you can also add multiple
commands to the command line).

If you have common options you always want to pass to maven, you can put them in a file called
`` either in the directory you run maven from (to affect only that project)
or your home directory (to affect everything you run maven for).  See
and for some common property names.

For further reference on the available commands it may be a good idea to change into a subdirectory
of incubator-geronimo/modules and have a look at the respective maven.xml files.


= Building the full server =

Simply type `maven` in the root of the Geronimo source tree.  Once the build successfully
completes, the assembled server will be available in the target directory.

= Building Offline =

If you're not online (so Maven fails to download), use the -o flag to maven (i.e. run `maven

= Build Just One Module =

cd to the directory holding the module (i.e. modules/core) and run `maven` from there.

Alternately, set the "modules" system property to the name of the directory under "modules"
or "specs" that you want to affect.  For example, {{{maven -Dmodules=core}}} (for modules/core)
or `maven -Dmodules=j2ee-deployment` (for specs/j2ee-deployment)

= Compile Only =

Try `maven java:compile test:compile` or some variation thereof.

= Cleaning your workspace =

To clean your workspace, type `maven clean`.

= Testing Build =

Start the server with the debug console:
$ cd target
$ java -jar bin/server.jar org/apache/geronimo/DebugConsole

Connect to the debug console:


To stop the server use ctrl-C or an equivalent; a proper shutdown command will be made available
when the deployment includes the remoting framework.

You can also start the server using "maven run:server" or "maven debug:server", but startup
using maven disables the ctrl-C proper shutdown.

= Bypassing Tests =

If you don't want to run test at all, try adding `-Dmaven.test.skip=true` to your maven command

If you want to run all the tests but not stop if there's a failure, try adding `-Dmaven.test.failure.ignore=true`
to your maven command line.

= Problems? =

If having problems building Geronimo, make sure it isn't simply because your Maven repository
has become 'corrupted' or out of sync:

Delete (or temporarily rename) the .maven directory in your home directory and try building
Geronimo again.

(Under UNIX this is typically in /home/yourusername whilst under Windows this is typically
in C:\Documents and Settings\yourusername)

Running the command `maven site` seems to take up a lot of memory.  If you get an out of memory
error, try setting MAVEN_OPTS=-Xmx512m.

= Remoting Tests Hang =

Make sure the host name of your machine ( or whatever) is resolvable
in DNS.  Worst case, add it to the line in `/etc/hosts` or `c:\windows\system32\drivers\etc\hosts`

If you use a windows system,try upgrading the JDK to the latest version. There are few bugs
in older versions of JDK 1.4, which causes the infinite wait while a server is being closed.

View raw message