Prerequisite reading

Before you get started, please make sure you have read the documentation below. If you have not, you may not get a full understanding of the matters described in this document.

  1. Upgrader overview
  2. Getting started

Prerequisite

You will need the following tools to build the Upgrader from the sources.

  1. Java Development Kit 1.5 or higher: You can download and intall the JDK from the Java web site. Note that you need the JDK, not the JRE.
  2. Maven 2.0 or higher: Download and install the maven tool from the Apache web site.
  3. MySQL 5.0 or higher: Download and install MySQL from the MySQL we site. Note that if you are using some other database, you will need to have the database installed instead of MySQL. Also, you will need the JDBC driver as explained in the getting started section.

Optionally, you need the following tools if you are planning on adding to the tool or extending it.

  1. Eclipse 3.3: Download and install from the Eclipse web site. This is the IDE that we have used for developing the tool. The source distribution and the Subversion repository include the project files for the Eclipse project. We also suggest the following Eclipse plugins:
    1. Subclipse: Subversion plugin for Eclipse.
    2. Maven: Maven plugin for Eclipse.
  2. Subversion: If you did not install the Subclipse plugin, you could also use other Subversion clients like svn command line client for Linux/Windows or TortoiseSVN for Windows. If you download the source package from the download site, you don't need Subversion.

Obtaining the source distribution

You have two options:

  1. Download the source distribution from the download page.
  2. Checkout the sources from the Subversion repository. If you are checking out the source code from the repository, please and need the repository information, you can find it here. Note that the "trunk" contains the latest snapshot and may not be very stable. We suggest that you checkout release snapshots from the "labels" directory. The snapshots present in this directory contains the released version of the software. If you want the latest development version but do not want to deal with the instability of the "trunk", checkout the code from the "labels/stable" directory. Before we start making drastic changes to the trunk, we create this tag to store a stable snapshot.

Creating the project

The steps described below are meant for invoking from the command line. If you are using Eclipse, you will have to improvise along similar lines.

  1. If you have downloaded the source distribution, unpack the source distribution using an unzip tool of your choice. The tool will create a directory called upgrader-tool containing the source tree.
  2. If you want to checkout from the Subversion repository, create a directory called "upgrade-tool". Perform a svn checkout as explained here.

Building the sources

To build the binary distribution, you need the following:

  1. Create an user called "tester" with no password with insert/update/select/drop/delete access to the "test" database. Please refer to the MySQL manual for details. This step is needed because during the build process, the tests are run and the tests require access to the database.
  2. Execute the following Maven goals from the root directory of your project. Maven will download all the required dependencies and install them in the repository directory.
    1. > mvn clean - cleans the project target directory.
    2. > mvn site - generates documentation and Javadocs.
    3. > mvn assemly:assembly - compiles, jars and builds the binary distribution.
    You can also use other maven build and reporting goals. Please see the Maven documentation for details.