This page describes how to use
ant to build the distribution from
the source code. This Ant build process was originally based on Geoff Arnold's
Ant build script, and we thank him for his
It is not necessary to build the JAR files from source code to get started with Jini technology. The JAR files are provided for you as part of the starter kit, depending on your installation options. The location of the JAR files is documented in info-index.html . In the instructions below, install_dir is the directory into which you installed the JGDMS distribution.
The following prerequisites must be met before a build can be executed:
bindirectory of the Java(TM) Platform, Standard Edition JDK, v 1.8 (or later) must be in your executable search path. You can obtain the Java software at
The following build options are currently available:
debugparameter can be used to override the default debuglevel values. The possible values are "
source", and "
vars". If two or more values are used together, they must be comma-separated (eg, "
lines,source,vars"). Refer to the javac documentation or the javac task section of the Ant documentation for further details regarding these debuglevel options.
ant -Ddebug=lines,source,vars <target>
To build the starter kit JAR files, you must:
cd install_dir ant <target>where the basic targets are:
This target is also the default target and can be invoked by simply running
antwithout specifying any target. This target compiles the class files for all of the distribution source code, generates Java Remote Method Invocation (Java RMI) stub classes, and generates the configentry files. The class files and configentry files will be placed in the following directories, respectively:
Additionally, this target will build all subprojects (currently 'qa' and 'examples/hello').
Creates the JAR files for the distribution, using the compiled class files. The compiled class files must already have been created. The resulting JAR files will be placed in the following directories:
During the jars build, warning messages similar to the following are generated:
[java] Nested class LogManager$Probe has different preferred state than outer class LogManager
Messages of this sort are expected and pose no concern to the resulting build.
Removes the class files, configentry files, docs, JAR files, and all associated directories generated during the build.
Generates all the documentation for the starter kit. The documentation will be placed in the following directory:
Generates API documentation for the starter kit, using the Javadoc(TM) tool. The documentation will be placed in the following directory:
Generates the specification-only documentation for the starter kit, using the Javadoc(TM) tool. The documentation will be placed in the following directory:
This target will compile everything, generate the jar files, generate the javadoc, and produce the distribution bundles (binary and source) in the top-level "dist" directory.
There are three test harnesses:
If you make any modifications and/or corrections to this build process and want those changes considered for use in our next release, please submit your modifications for consideration.