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.
-
Upgrader overview
-
Getting started
Prerequisite
You will need the following tools to build the Upgrader from the
sources.
-
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.
-
Maven 2.0 or higher: Download and install the maven tool
from the
Apache web site.
-
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.
-
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:
-
Subclipse: Subversion plugin for Eclipse.
-
Maven: Maven plugin for Eclipse.
-
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:
-
Download the source distribution from the
download
page.
-
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.
-
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.
-
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:
-
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.
-
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.
-
> mvn clean - cleans the project target
directory.
-
> mvn site - generates documentation and Javadocs.
-
> 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.