JML's implementation is built on top of the implementation of the mjc compiler for MultiJava, which it uses as a compiler framework.
For more information on JML, see the documentation accessible from the JML.html file in the top directory of the JML release, or go to www.jmlspecs.org for more information.