Most read:
Popular archives:
Java Q&A Forums - Let the great migration begin
We're pleased to announce the first phase of the integration of the Java Q&A Forums with our community platform, JavaWorld's
Daily Brew. Whether you're one of our longtime forum users or a brand newbie, we hope you'll visit the Java Q&A Forums in their new home alongside JW Blogs.
| Enterprise AJAX - Transcend the Hype |
| Oracle Compatibility Developer's Guide |
A defined build process is an essential part of any development cycle because it helps close the gap between the development, integration, test, and production environments. A build process alone will speed the migration of software from one environment to another. It also removes many issues related to compilation, classpath, or properties that cost many projects time and money.
Ant is a platform-independent scripting tool that lets you construct your build scripts in much the same fashion as the "make" tool in C or C++. You can use a large number of built-in tasks in Ant without any customization. Some of the most important tasks are shown in the following table but explained in more detail in the example that follows.
Here are some useful commands that are built in the Ant distribution.
| Command | Description |
|---|---|
| Ant | Used to execute another ant process from within the current one. |
| Copydir | Used to copy an entire directory. |
| Copyfile | Used to copy a single file. |
| Cvs | Handles packages/modules retrieved from a CVS repository. |
| Delete | Deletes either a single file or all files in a specified directory and its sub-directories. |
| Deltree | Deletes a directory with all its files and subdirectories. |
| Exec | Executes a system command. When the os attribute is specified, then the command is only executed when Ant is run on one of the specified operating systems. |
| Get | Gets a file from an URL. |
| Jar | Jars a set of files. |
| Java | Executes a Java class within the running (Ant) VM or forks another VM if specified. |
| Javac | Compiles a source tree within the running (Ant) VM. |
| Javadoc/Javadoc2 | Generates code documentation using the javadoc tool. |
| Mkdir | Makes a directory. |
| Property | Sets a property (by name and value), or set of properties (from file or resource) in the project. |
| Rmic | Runs the rmic compiler for a certain class. |
| Tstamp | Sets the DSTAMP, TSTAMP, and TODAY properties in the current project. |
| Style | Processes a set of documents via XSLT. |
While other tools are available for doing software builds, Ant is easy to use and can be mastered within minutes. In addition, Ant lets you create expanded functionality by extending some of its classes. I will show this expansion in a following example.
You must install three components on your machine to run Ant: JDK, XML parser, and Ant (see Resources for links).
In many cases, the XML parser is part of the lib files distributed with the Servlet runner or the Web Server. If not, the free XML parser from java.sun.com is sufficient.