This page contains instructions for UTJML developers to download and install UTJML packages. If you are not a UTJML developer but interested in trying out early prototypes of UTJML tools, click here instead.
UTJML tools are being implemented as an extension to the JML tools (see Figure 1). The JML tools depends on MultiJava tools that add some new features to the Java programming language, such as open classes and multiple dispatch. This means that you need to have both JML and MultiJava packages installed on your machine. In addition, you also need to have such utilities packages as ANTLR, GNU getopt, and JUnit.
In sum, you need to install the following packages to develop UTJML tools.
In the rest of this document you will find how to download and organize these packages.
The following directory strucure is suggested to organize different packages necessary to develop UTJML tools. The recommended place is to put them under your home directory.
UTJML - UTJML packages JML2 - JML packages MJ - MultiJava packages PLSL - Utility packages such as ANTLR, GNU getopt, and JUnit
Note that the top directories of JML and MultiJava packages are named
MJare important because some makefiles depend on them. However, the name and location of utility packages are not important as long as they are included in the
These packages can be downloaded and installed individually, or you can get them all in a single zip file.
To download a single zip file containing all these packages, click
The zip file was originally created by
of Iowa State University and contains only
To intall it, simply unzip it under your home directory.
Make sure to add to your
directory or whatever directories you installed the utility packages.
cvs -d:pserver:anonymous@@multijava.cvs.sourceforge.net:/cvsroot/multijava login cvs -z3 -d:pserver:firstname.lastname@example.org:/cvsroot/multijava co MJIf asked for a password, you can simply hit the enter key. The commands will check out the CVS module MJ and create a directory named
MJunder the current working directory.
cvs -d:pserver:email@example.com:/cvsroot/jmlspecs login cvs -z3 -d:pserver:firstname.lastname@example.org:/cvsroot/jmlspecs co JML2If asked for a password, simply hit the enter key. The commands will check out the CVS module JML2 and create a directory named
JML2under the current working directory.
To compile both MultiJava and JML sources, you first need to set
several environment variables. The easiest way to do this is to source
one of the sample shell scripts found in the
For example, if you are on Cygwin, do the following:
The JML sourceme files set environment variables for both JML and
MultiJava; that is, you shouldn't source MultiJava sourceme files
separatley. You need to source the sourceme file only once even if you
compile the source code multiple times, so it is a good idea put
the above command into your shell initialization or startup file
To compile MultiJava sources, do the following:
cd MJ make rebuild-all
To compile JML sources, do the following:
cd JML2 make rebuild-all
To run all the tests shipped with MultiJava or JML, do the following
under the top directory, i.e.,
JML2/docs/developer-tips.html. Some of the tips are also applicable to UTJML developers.
UTJML sources are stored in the CVS repository of SSV lab. To download the latest UTJML source code, refer to the Accessing CVS Repository page; you can use either the Web interface or any CVS client programs.
To build UTJML, you first need to add the
directory to your
To actually build UTJML, go to the top directory (i.e.,
and do the following:
To run all the tests, do the following:
Last modified: $Id: installing-utjml.html,v 1.1 2006/06/22 16:42:24 cheon Exp $