http://ant.apache.org
).
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, located at
http://user-garnold.jini.org
(link dead), 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 Apache River distribution.
NOTE: Please do not attempt to build the Apache River JAR files without first taking referencing the platforms on which the starter kit has been tested (link dead).
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
.
http://ant.apache.org
.
The following build options are currently available:
debug
parameter 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.
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:
- all.build
This target is also the default target and can be invoked by simply runningant
without 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:
install_dir/build/classes
install_dir/build/configentry
Additionally, this target will build all subprojects (currently 'qa' and 'examples/hello').
- jars
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:
install_dir/lib
install_dir/lib-dl
install_dir/lib-ext
NOTE:
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.
- clean
Removes the class files, configentry files, docs, JAR files, and all associated directories generated during the build.
- doc Generates API documentation for the starter kit, using the Javadoc(TM) tool. The documentation will be placed in the following directory:
install_dir/doc/api
- spec-doc
Generates the specification-only documentation for the starter kit, using the Javadoc(TM) tool. The documentation will be placed in the following directory:
install_dir/doc/specs/api
- release
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.
- install-policy and uninstall-policy
This target will install/uninstall jsk-policy.jar into the JVM extensions 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 to river-user@incubator.apache.org
for consideration.