2016/04/10 - Apache Wookie has been retired.

For more information, please explore the Attic.

We strongly encourage you to participate in the development of Apache Wookie. We need help in all areas, not just code development, so don't be afraid to join our mailing list and get busy. This page describes some the common workflows for developers, hopefully you are not a developer and will help us document workflows for non-developer contributors.

Code Development

The first thing you need to do is get a copy of the source code, once you have the code this page will help you set up your development environment.

Since you will be working as part of a heterogeneous development community we need to ensure that all of us the code in our repositories is formatted in a consistent and manageable way. You are free to use whatever development environment you prefer but please configure it as follows.

Subversion EOL Style

We provide a configuration file for SVN EOL Style.

The contents of this file need to be added to the bottom of your Subversion config file.

On Linux based systems this is in ~/.subversion/config

On Windows this is normally found at C:\Documents and Settings{username}\Application Data\Subversion\config

Debugging

You can start Wookie in debug mode using JDSPA with the following command:

ant -Djvmargs="-Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n" run

Once Wookie is running in debug mode you need to connect to it using your chosen debugger.

Eclipse

This section describes specific configuration for using Eclipse to develop Wookie.

Subclipse

Subclipse is an Eclipse plugin that allows you to use Subversoin easily. Install it from the Subclipse update site.

IvyDE

We use Apache Ivy for dependency management. In order to compile Wookie in eclipse you need to install IvyDE which you can get from its update site.

Once installed you will need to set the correct ivysettings path for Wookie:

Code Style and Templates

In Eclipse:

Debugging in Eclipse

To connect Eclipse to Wookie running in debug mode on your local machine you would:

Run -> Debug Configurations...

Select "Remote Java Application"

Click "New Launch Configuration"

Set as follows:

Name: Wookie Debug (Localhost)
Project: Click "Browse" and select your Wookie project
PORT: 8001

Now click the "Debug" button (note you must be running Wookie in debug mode, see above, first).

You can now set breakpoints etc. as if you were running from within Eclipse.

Once you have set up this "debug configuration" you can quickly access it from your debug menu.

For more on remote debugging with Eclipse see the Eclipse documentation

Miscellaneous

This section includes some additional notes that might be useful to some developers.

Bug in Subversion 1.6 on GNOME

There is currently a bug in the new support for GNOME keyring in Subversion 1.6. It works OK when using the command line, but not when other users of the libraries use it, such as Subclipse. You can find more information on the Subclipse site, which also documents a workaround.