Sebastopol, CA--"I have to confess that I had absolutely no idea that
Ant, the little build tool that could, would go as far as it did and
make such a mark on the Java developer community," says James Duncan
Davidson, the creator of Ant, in the foreword to the new book
Definitive Guide (O'Reilly, US $34.95). "It might be that the key to
Ant's success is that it didn't try to be successful. It was a simple
solution to an obvious problem that many people were having.
In 1998, frustrated by his efforts to create a cross-platform build of
Tomcat using the build tools of the day (GNU Make, batch files, and
shell scripts), Davidson threw together his own build utility on an
airplane flight from Europe to the United States. Named Ant because it
was a little thing that could build big things, James's quick-and-dirty
solution to his own problem of creating a cross-platform build has
evolved into what is perhaps the most widely used build management tool
in Java environments.
"I love Ant. Ant is among the most important tools ever written for
Java," says Eric M. Burke, coauthor of "Ant: The Definitive Guide."
"Nearly every Java project uses Ant for its builds. I use it on a daily
basis. It is used by nearly every Java developer, and has been
integrated into every major Java IDE. Ant is critical to refactoring
and eXtreme Programming because development teams need to ensure that
every developer can build the project using identical configurations.
Ant provides this capability."
If you're developing in Java and not using Ant, you owe it to yourself
to invest in this little book. Ant is a reliable, cross-platform build
tool that takes full advantage of the Java environment. Ant is itself
written in Java. Ant works on multiple platforms--Unix, Linux, Windows,
etc.--so your investment in learning Ant won't be wasted when you
switch development platforms. Ant is easily extensible. Does your
project have a requirement not currently met by any of Ant's
functionality? No problem! Do like James, and write your own Ant task.
For eXtreme Programming, Ant is a must-have tool, enabling frequent
builds to be done conveniently, which in turn facilitates test-driven
development using JUnit and related technologies. Ant buildfiles are
written using XML--a well-established standard--so your use of Ant will
not require you to learn yet another scripting language. And Ant is an
open source effort, part of the Jakarta project hosted by the Apache
Here's a sampling of what you can accomplish using Ant:
- Define build chunks, the results that they must produce, and the
dependencies between them
- Automatically retrieve source code from source control systems such as
- Build applications by having Ant not only compile the necessary source
files in the proper order, but also generate the JAR files you need for
Do all of the above from a single build file (or set of build files)
that will function identically on every platform that Ant supports.
"Jesse and Eric do a great job of teaching you how to use Ant as it
exists today. The book offers you in-depth information and details on how
you use Ant to do things that it was never envisioned to do. Whether
you are a casual user or needing to manage large and diverse projects,
this is the book that you should keep close at hand." --James Duncan
Davidson, Creator of Ant
Ant: The Definitive Guide
Complete Build Management for Java
By Eric M. Burke, Jesse E. Tilly
0-596-00184-3; 288 pages, $34.95 (US), $54.95 (CAN)
O'Reilly & Associates is the premier information source for
leading-edge computer technologies. The company's books, conferences,
and web sites bring to light the knowledge of technology innovators.
O'Reilly books, known for the animals on their covers, occupy a
treasured place on the shelves of the developers building the next
generation of software. O'Reilly conferences and summits bring alpha
geeks and forward-thinking business leaders together to shape the
revolutionary ideas that spark new industries. From the Internet to
XML, open source, .NET, Java, and web services, O'Reilly puts
technologies on the map.