What should I download?

Users who want to work with Java 1.5, 1.6, 1.7, or later sources should consider using OpenJML first.

A JML extension to Eclipse is JML Editing, which makes the Java development tooling available ready for JML. This can be used with any other JML tools.

Users who need to work with Java 1.4 source files (no generics, or other Java 1.5+ features), and who want to use Eclipse (with JDK 1.4, 1.5, or 1.6), should consider first using the Mobius Program Verification Environment. It includes several JML tools (ESC/Java2, JML2, and a variety of other static checkers and verification tools), and it works on Linux, Mac OS X, and Windows. (Many of the tools only work with Java 1.4 source files, but some others work with Java 1.5 and later.)

Users wanting to use Java 1.5 or later might also try any of the following tools:

Downloading Other Tools for JML

Aside from the Common (formerly ISU) JML tools (see below), other tools for JML can be obtained from the page of others working on JML tools. In particular:

Downloading the Common (formerly ISU) JML Tools

The Common (formerly ISU) JML tools release is currently in beta-test. It runs on any platform that has J2SDK 1.4.1 or J2SDK 1.4.2. We have tested it on Red-Hat Linux, Windows XP, and Mac OSX.

You can get the latest release of the Common JML tools by following the steps below.

  1. Fetch the release from the following URL http://sourceforge.net/projects/jmlspecs/ or more directly from http://sourceforge.net/project/showfiles.php?group_id=65346. (If those links are down, you can also download the Common JML tools from http://www.jmlspecs.org/OldReleases/.) You will be getting a gzipped tar file, such as JML.5.2.tar.gz.
  2. You now have the gzipped tar archive.
    Under Windows, use Winzip or some similar program to extract it to some directory of your choice. For example, use Winzip to extract it to c:\.
    On Unix, you might use the following commands to untar it, after saving it to /usr/local/JML.tgz.
    cd /usr/local
          tar -xzvf JML.5.2.tar.gz
  3. Now, using a web browser, read the file JML/README.html in what you just unpacked for further instructions.

If you have trouble with these instructions, please file a support request through the sourceforge.net support tracker interface so we can try to help you. (You have to get a sourceforge.net login first, but that just allows us to contact you. To get a login, use the 'New User via SSL' link, located near the top of the left navigation bar on the SourceForge.net site.)

We are also interested in your feedback on JML: things you like, don't like, find confusing, etc. Since JML is open source, we'd appreciate it if you'd send us any bug fixes or enhancements you are willing to share with others. See the sourceforge.net tracker interface for places to file bug reports, support requests, patches, and feature requests for JML and its tools.

After installation, please either register with sourceforge to be notified of future file releases for JML (by clicking on the little envelope in the file section of the sourceforge project page, or if you don't have a sourceforge.net login, by signing up for the mailing list jmlspecs-releases@lists.sourceforge.net through its SourceForge.net web interface. This will let us inform you of future releases.

You can also get access to the JML sources from the SourceForge.net project page for JML SourceForge.net Logo

Last modified Wednesday, April 20, 2016.