http://ant.apache.org).
This page describes how to use ant to build the starter kit from
the source code. This Ant build process was originally based on Geoff Arnold's
Ant build script, located at
http://user-garnold.jini.org, and we thank him for his
contribution.
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 starter kit distribution.
NOTE: Please do not attempt to build the starter kit JAR files without first taking note of the Outrigger build issues, and the platforms on which the starter kit has been tested.
The following prerequisites must be met before a build can be executed:
bin directory of the Java(TM) 2 SDK, Standard
Edition, v 1.4 (or later) must be in your executable search path. You can
obtain the Java software at
http://java.sun.com .
JAVA_HOME environment variable must be set to the
full path of the top-level directory of the installed Java2 SDK software.
http://ant.apache.org .
ANT_HOME environment variable must be set to the
full path of the top-level directory of the installed Ant software.
The following build options are currently available:
JAVADEBUG environment can be used to override the
default debuglevel values. The possible values are "none",
"lines", "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.
To build the starter kit JAR files, you must:
cd install_dir/source
ant <target>
where the basic targets are:
- all
This target is also the default target and can be invoked by simply runningantwithout specifying any target. This target compiles the class files for all of the starter kit source code, and generates Java Remote Method Invocation (Java RMI) stub classes. The class files will be placed in the following directory:
install_dir/source/classes
- jars
Creates the JAR files for the starter kit, 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:
install_dir/source/lib
install_dir/source/lib-dl
install_dir/source/lib-ext
- clean
Removes the class files, configentry files, docs, JAR files, and all associated directories generated during the build.
- doc or javadoc
Generates API documentation for the starter kit, using the Javadoc(TM) tool. The documentation will be placed in the following directory:
install_dir/source/doc/api
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 to jini-comments@sun.com for consideration.
PersistentOutriggerImpl (the contributed persistent
implementation of JavaSpaces(TM) technology from Sun Microsystems) relies
on a pluggable persistence layer, com.sun.jini.outrigger.Store.
This release includes two implementations of the Store
interface, logstore
and snaplogstore.
By default,
PersistentOutriggerImpl uses the snaplogstore implementation.
Logstore depends on Progress Software's ObjectStore PSEPro for Java
(PSEPro) to persist the contents of the space to disk. PSEPro requires the
post processing of the class files for any objects that are going to be
persisted. PSEPro also requires a set of runtime classes. Neither the
runtime classes nor post processor are distributed in this release of
the starter kit. As a result, unless you have obtained the PSEPro
development tools (in particular Release 6.0 Service Pack 7), you cannot
build LogStore from its source code (note, logstore's source
code is included in this release).
If you use the above process to build the starter kit, you will be able to
build TransientOutriggerImpl (the contributed,
non-persistent implementation of JavaSpaces technology from Sun
Microsystems), PersistentOutriggerImpl, and snaplogstore
(along with the non-Outrigger parts of the starter kit). If PSEPro's
runtime classes are not present, the above process will not (re)build the
logstore package or the associated archive files.