Introduction to Apache Ant

The Apache Ant package is a Java-based build tool. In theory, it is like the make command, but without make's wrinkles. Ant is different. Instead of a model that is extended with shell-based commands, Ant is extended using Java classes. Instead of writing shell commands, the configuration files are XML-based, calling out a target tree that executes various tasks. Each task is run by an object that implements a particular task interface.

This package is known to build and work properly using an LFS-7.8 platform.

Package Information

Additional Downloads

Apache Ant Dependencies


A JDK (Java Binary or OpenJDK- and GLib-2.46.2

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/apache-ant

Installation of Apache Ant



You may need additional libraries to satisfy the build requirements of various packages installed using Apache Ant. Review the table at http://ant.apache.org/manual/install.html#librarydependencies for any prerequisite libraries you may need. Place any needed libraries in lib/optional.

Unpack and copy the junit and hamcrest jar files to the local directory tree.

tar -xvf ../hamcrest-1.3.tgz &&
cp -v ../junit-4.11.jar \
      hamcrest-1.3/hamcrest-core-1.3.jar lib/optional

Install Apache Ant by running the following commands:

The unit regression tests are performed during the build step below unless JUnit is not installed. Now, as the root user:

./build.sh -Ddist.dir=/opt/ant-1.9.6 dist &&
ln -v -sfn ant-1.9.6 /opt/ant


Make sure the JAVA_HOME environment variable is set for the root user.

Command Explanations

cp -v ... lib/optional: This command copies the JUnit and hamcrest jar files into the directory where Apache Ant will look for them.

./build.sh -Ddist.dir=/opt/ant-1.9.6 dist: This command does everything. It builds, tests, then installs the package into /opt/ant-1.9.6.

ln -v -sfn ant-1.9.6 /opt/ant: This command is optional, and creates a convenience symlink.

Configuring Apache Ant

Config Files

/etc/ant/ant.conf, ~/.ant/ant.conf, and ~/.antrc

Configuration Information

Some packages will require ant to be in the search path and the ANT_HOME environment variable defined. Satisfy these requirements by issuing, as the root user:

cat >> /etc/profile.d/extrapaths.sh << EOF

# Begin Apache-ant addition

pathappend /opt/ant/bin
export ANT_HOME=/opt/ant

# End Apache-ant addition


The above instrutions assume you have configured your system as described in The Bash Shell Startup Files.


Installed Programs: ant, antRun, antRun.pl, complete-ant-cmd.pl, runant.pl, and runant.py
Installed Libraries: ant*.jar
Installed Directories: /opt/ant-1.9.6

Short Descriptions


is a Java based build tool used by many packages instead of the conventional make program.


is a support script used to start ant build scripts in a given directory.


is a Perl script that provides similar functionality offered by the antRun script.


is a Perl script that allows Bash to complete an ant command-line.


is a Perl wrapper script used to invoke ant.


is a Python wrapper script used to invoke ant.


files are the Apache Ant Java class libraries.

Last updated on 2015-11-13 08:24:57 -0600