Development: Build Environment
Instead of some variant of the make
utility the Java
based Ant tool is used as build tool within this project. See the
build tools page
for more information on Ant. There is a so-called build file
(named build.xml
) for building and running parts of the
project.
Due to the fact that Ant always has to be configured (e.g. by
environment variables) and enriched by additional libraries (such as
a XSLT processor or additional tasks as XDoclet) a complete Ant
runtime environment is included in the project directory. In the
tools
directory the Jar archives of Ant, the used
XSLT processor and all needed additional tasks are located.
To start Ant there is a script in the top level directory of the
project (build.sh
for Unix/Mac OS X and
build.cmd
for Windows). This script is not named
ant
to prevent naming conflicts with other versions of
Ant that are already installed on your system.
The available targets and their descriptions is listed in the
following table, but it can also be printed by running build
-projecthelp
.
Provides the main targets and serves as a shell for the task
specific target build files.
Target |
Description |
clean |
Removes all build artifacts. |
demo |
Runs the demo application. |
world
|
Builds the complete project. |
Provides auditing targets.
Target |
Description |
audit |
Creates all auditing information available. |
audit.checkspace |
Checks spacing of all source files. |
Provides compilation targets for all the build artifacts
in this project.
Target |
Description |
compile |
Compiles all sources of the project. |
compile.custom |
Compiles the custom demo application. |
compile.demo |
Compiles the demo application. |
compile.drivers |
Compiles the JavaDoc drivers. |
compile.regex |
Compiles the regex demo application. |
compile.shared |
Compiles the shared sources. |
compile.tests |
Compiles the unit tests. |
Provides targets to build the distributable project artifacts.
Target |
Description |
dist |
Builds the complete project distribution. |
dist.clean |
Removes all build and distribution artifacts. |
dist.demo |
Builds all demo applications. |
dist.lib |
Builds the project libraries. |
dist.src |
Creates the source code distribution archives. |
Provides targets to build the project documentation
and update the changelog.
Target |
Description |
doc |
Creates the project documentation. |
doc.change |
Interactively adds change entries to the changelog. |
doc.site |
Creates the project site documentation. |
Provides targets to build various JavaDoc documentations,
that's what the Taglets Collection is all about anyway...
Target |
Description |
javadoc |
Creates the project JavaDoc documentation. |
javadoc.j2se14 |
Creates the JavaDoc documentation for J2SE14. |
javadoc.j2se15 |
Creates the JavaDoc documentation for J2SE15. |
javadoc.j2se16 |
Creates the JavaDoc documentation for J2SE16. |
Generates taglet configurations for known
tag tools.
Target |
Description |
tag.config |
Generates the tag tool configurations. |
Target |
Description |
audit.checkstyle |
Creates a checkstyle auditing report. |
Target |
Description |
audit.coverage |
Creates a coverage report. |
Target |
Description |
audit.test |
Runs the project unit tests and creates a report. |
Target |
Description |
murimages |
Launches Mur d'Images |
Target |
Description |
xdoclet.sync |
Synchronizes the XDoclet tags (requires 'xdoclet.sync.dir'). |
Besides the main build file build.xml
sources
a couple of support files in the following order:
-
env/user.xml
containing user specific settings.
-
env/site.xml
containing site settings.
-
env/defaults.xml
containing project defaults.
Ant uses always the first definition of a variable it
encounters. Therefore the above list suggests that
user settings in env/user.xml
override site
specific settings in env/site.xml
, and
site settings override the project defaults in
env/defaults.xml
.
Checkout the Development Setup page for
more information about configuring your build environment.