Apache Ant - Resources

| the Apache Ant site |

| Home |

| Projects |

# Resources

### FAQs

#### At Ant's website

Starting with the release of Ant 1.4 the Ant's FAQ is bundled with the distribution, the most recent version can always be found at the website.

FAQ: | http://ant.apache.org/faq.html

#### jGuru

jGuru hosts an interactive Ant discussion forum and FAQ system

Forum: | http://www.jguru.com/forums/home.jsp?topic=Ant
FAQ: | http://www.jguru.com/faq/home.jsp?topic=Ant

#### FAQ about Borland Application Server tasks

Benoit Moussaud, the original author of the Borland Application Server specific EJB tasks has put together a FAQ for this specific subtask.

FAQ: | http://www.moussaud.org/ejbjar.html

### WIKIs

#### Apache

The ASF provides a Wiki farm for Apache projects.

Main page: | Apache Wiki Farm
Ant Wiki: | Ant Wiki

### Books

The most recent books come first

#### Ant in Action

Published April/May 2007, and covering Ant 1.7.

This is a major rewrite of the first edition; still 600 pages long.

This book moves up from Ant1.5 to Java1.5 and 1.7, with a near-complete rewrite of the applied-ant section, covering new topics such as antlibs, repository management with Ivy, Xml Schema validation, EJB3.0/Java EE development and advanced deployment using SmartFrog. The ant coding section looks at AntUnit, antlib authoring and scripting languages, while the beginners chapters, the first third of the book, still shows developers how to build, test, package and redistribute a Java application.

If you are one of the 20,000+ owners of the first edition, it is now obsolete. Sorry :)

Author: | Steve Loughran and Erik Hatcher
Publisher URL: | http://www.manning.com/loughran/
Book URL | http://antbook.org/
Source code repository | http://sourceforge.net/projects/antbook
ISBN: | 193239480X

Available from:
Amazon.com | Barnes & Noble | Book Sense | Powells.com

#### Ant: The Definitive Guide, 2nd edition

Published April 2005, and covers Ant release 1.6.1.

This is a complete rewrite of the first edition; this book is now 290 pages and so covers Ant in more depth than its predecessor.

It also mixes reference information (tables) with text explanation on how to use the tasks. Contents includes JUnit, CVS, execution, basic deployment, Web application development and XDoclet. There is also coverage of XDoclet, and a chapter on how to extend Ant in Java.

Author: | Steve Holzner
URL: | http://www.oreilly.com/catalog/anttdg2/
ISBN: | 0596006098

Available from:
Amazon.com | Barnes & Noble | Book Sense | Powells.com

#### Pragmatic Project Automation

How to Build, Deploy, and Monitor Java Applications. Published: July 2004 ISBN: 0-9745140-3-9

This is not a reference guide to Ant, but a book on how to automate the build process. The core build, continuous integration, reporting and release management are all covered. Ant is of course central to this. This is a fun read!

Author: | Mike Clark
URL: | http://www.pragmaticprogrammer.com/sk/auto//
ISBN: | 0974514039

Available from:
Amazon.com | Barnes & Noble | Book Sense | Powells.com

#### Extreme Programming with Ant

This book shows how to implement an XP project using Ant 1.5.3, and many other 3rd party tools. Covers:

- The fundamentals of Ant: concepts, core and optional tasks
- How to write custom Ant components, including custom Tasks, Loggers, Listeners, Input Handlers, Selectors, Filters, Mappers and Data Types
- Mitigating risks by creating spike tests with Ant buildfiles
- Add CVS version control and testing with JUnit
- Automate nightly builds and reporting
- Deploy applications dynamically using XDoclet
- Enforcing Code Standards with Jalopy, PMD, CheckStyle, iContract, JDepend
- Using Remote Ant (Rant) and CruiseControl
- Generating project documentation
- Adapting an XP process for use by other teams or across an enterprise
- Custom Task examples to generating UML diagrams, creating reports and metrics on-the-fly
- Follows a case-study of a team that implements an XP Project

Authors: | Glenn Niemeyer and Jeremy Poteet
URL: | http://www.sams.com/catalog/product.asp?product_id=%7BFB825A48-BC04-4C55-BD8C-DF93C6BBF920%7D
ISBN: | 0672325624

Available from:
Amazon.com | Barnes & Noble | Book Sense | Powells.com

#### Ant. Das Java-Build-Tool in der Praxis

A German language book on Ant that covers Ant 1.5. This is the original description:

            Das Build-Tool Ant ist das Open-Source-Werkzeug, das den Entwicklungsprozess einer Java-
            oder J2EE-Anwendung wesentlich vereinfacht. Gesteuert durch XML-basierte Skripte fï¿½hrt es
            nahezu alle Aufgaben aus, die nach dem Kodieren einer Anwendung anfallen.

Some topics:

- creating archives (zip, jar)
- call the java compiler
- edit property files
- file operation
- source code control systems

The book is available in English as "Ant: The Java Build Tool in Practice"

Authors: | Bernd Matzke
URL: | http://www.addison-wesley.de/main/main.asp?page=home/bookdetails&ProductID=13459
ISBN: | 3827320666

Available from:
Amazon.com | Barnes & Noble | Book Sense | Powells.com

#### Java Development with Ant

Published 2002. This book covers Ant 1.5, including:

- The new Ant 1.5 features
- Ant's datatypes and property handling
- JUnit testing and reporting
- Continuous integration techniques
- XDoclet for attribute-oriented programming
- EJB generation, building, and packaging
- Writing and testing native code
- Building Web Services with Apache Axis
- Deploying your system to multiple remote servers
- Using and writing
  - Loggers
  - Listeners
  - Selectors
  - Custom tasks

Also available in Korean and German editions

Authors: | Erik Hatcher and Steve Loughran
URL: | http://www.manning.com/antbook/
ISBN: | 1930110588

Available from:
Amazon.com | Barnes & Noble | Book Sense | Powells.com

#### Ant: The Definitive Guide, 1st edition

Published 2002, Covers Ant release 1.4.1.

Authors: | Jesse E. Tilly and Eric M. Burke
URL: | http://www.oreilly.com/catalog/anttdg/
ISBN: | 0596001843

Available from:
Amazon.com | Barnes & Noble | Book Sense | Powells.com

#### Ant. Kurz und Gut.

A German language short reference for Ant that covers Ant 1.4. This is the original description:

      Ant kurz & gut enthält eine vollständige Referenz der Built-in Tasks
      und ihrer jeweiligen Attribute sowie kurze Beispiele für ihre Verwendung.
      Daneben bietet das Buch eine knappe Einführung in die Arbeit mit Ant und
      eine Erläuterung der Ant-Basiselemente (Projekte, Properties, Targets und Tasks).
      Behandelt werden außerdem grundlegende Konzepte wie Filesets, Patternsets und
      Pfadstrukturen, das Schreiben eigener Tasks, die Aufruf-Syntax und Optional Tasks.

Author: | Stefan Edlich
URL: | http://www.amazon.de/exec/obidos/ASIN/3897212412/
ISBN: | 3897212412

Available from:
Amazon.com | Barnes & Noble | Book Sense | Powells.com

#### Java Tools for eXtreme Programming

This book covers the following XP subjects:

- Automated unit and functional testing
- Continuous integration through build and deployment automation
- The value of refactoring and continuous integration
- How Ant, JUnit, JUnitPerf, Cactus, HTTPUnit, and JMeter can be used to achieve the goals of the XP methodology

Authors: | Richard Hightower and Nicholas Lesiecki
URL: | http://www.wiley.com/cda/product/0,,047120708X,00.html
ISBN: | 047120708X

Available from:
Amazon.com | Barnes & Noble | Book Sense | Powells.com

### Articles and Presentations

The following sections list articles and presentations written about Apache Ant. If you've written something that should be included, please post it to one of the mailing lists.

### Articles

#### Ant + DocBook HOWTO

Pure Java DocBook Systems, including Ant Integration

The DocBook team documents how to use "make" for DocBook. This HOWTO document is an attempt to cover the neglected case of using DocBook for pure Java projects.

Author: | Blaine Simpson
URL: | http://pub.admc.com/howtos/ant-docbook-howto/

#### Extending Ant Input Abilities

The contents of this document is the following:

- Section 2 provides a simple example how InputHandlers are created,
- Section 3 develops an inputhandler that masks the passwords typed on the command line,
- Section 4 gives two handlers, whose input is typed in graphical components,
- Section 5 extends Input task so that we can use dierent input handlers on different uses of <input>,
- Section 6 describes a problem found while writing this document,
- Section 7 summarizes some dark corners the author do not understand.

Author: | Ivan Ivanov
URL: | https://sourceforge.net/project/showfiles.php?group_id=103509 (Download ZIP+PDF from Sourceforge)

#### Keep the Ant, Hold the XML

Key G. Gauthier talks about writing "buildfiles" in Java.

Author: | Key G. Gauthier
URL: | http://www.ftponline.com/javapro/2004_06/magazine/features/kgauthier/

#### Ant 1.6 for Task Writers

This article talks about XML namespace handling, Ant libraries and the newly introduced type polymorphism.

Author: | Stefan Bodewig
URL: | http://otn.oracle.com/pub/articles/bodewig_taskwriters.html

#### Managing Build Complexity with Apache Ant 1.6

As Apache Ant is applied to increasingly difficult tasks, its users are creating more complex and less legible build files. This is due, in part, to the limited tools for decomposition and code reuse within previous versions of Ant.

Author: | Geoffrey Wiseman
URL: | http://www.sys-con.com/story/?storyid=45078&DE=1

#### New Ant 1.6 Features for Big Projects

This article describes the <macrodef>, <import> and <subant> tasks in detail and shows how they help in building bigger systems.

Author: | Stefan Bodewig
URL: | http://otn.oracle.com/pub/articles/bodewig_ant1.6.html

#### Programmieren für Ant

This article describes the main topics of programming your own tasks. Description is done on five examples.

This article is written in German and published in Java-Spektrum 5/2004.

Author: | Bernd Matzke
URL: | http://www.sigs-datacom.de/sd/news/document?PID=216

#### Ant in Anger: Using Ant in a Production Development System

This document describes strategies and some basic examples of how to use Ant in larger team development projects.

Author: | Steve Loughran
URL: | http://ant.apache.org/ant_in_anger.html

#### Ant Task Guidelines

This document describes how to write custom Ant tasks, and how to submit them to potentially be included in Ant.

Author: | Steve Loughran
URL: | http://ant.apache.org/ant_task_guidelines.html

#### Build a Better Robot with Ant

This article describes the gory details of writing custom Ant tasks.

Author: | Erik Hatcher
URL: | http://www.fawcette.com/javapro/2003_02/magazine/features/ehatcher/l

#### Automating the build and test process

This article demonstrates an approach to the automated build and test process. Working with Ant 1.3 and the JUnit test framework, it shows how to automate a process that captures pertinent information about each test suite run, generates an attractive report, and e-mails the report.

Author: | Erik Hatcher
URL: | http://www.ibm.com/developerworks/java/library/j-junitmail/

#### Incremental development with Ant and JUnit

This article explores the benefits of unit testing with Ant and JUnit, detailing how to develop automated unit tests and integrate them into your build process.

Author: | Malcolm Davis
URL: | http://www-106.ibm.com/developerworks/library/j-ant/?dwzone=java

#### Automate your build process using Java and Ant

This article provides an introduction to using Ant with some basic examples and by highlighting some of the important tasks.

Author: | Michael Cymerman
URL: | http://www.javaworld.com/javaworld/jw-10-2000/jw-1020-ant.html

#### Short tutorial in Cactus' (formerly J2EEUnit) documentation

There is a short tutorial on how to use Ant in Cactus' documentation. It has a slant towards build files that will be used with Cactus.

Author: | Cactus development team
URL: | http://jakarta.apache.org/cactus/howto_ant_primer.html

#### Developing custom Ant tasks with VisualAge for Java

This article outlines how to integrate Ant into VisualAge for Java, and how to write and debug custom tasks using the IDE and the integrated debugger.

Author: | Glenn McAllister
URL: | http://www7.software.ibm.com/vad.nsf/data/document2366?OpenDocument&p=1&BCT=1&Footer=1

#### Automated builds with VisualAge for Java and Ant

This article shows how you can perform command line builds with a VisualAge for Java repository.

Author: | Glenn McAllister
URL: | http://www7.software.ibm.com/vad.nsf/Data/Document4366?OpenDocument&p=1&BCT=3&Footer=1

#### Ant: A Build Tool from the Jakarta Project

This article is from the "Best Practices" section of Sun's Dot-Com Builder Site.

Author: | Laura Geele Wang
URL: | http://dcb.sun.com/practices/profiles/ant.jsp

#### Making a Mountain Out of an Anthill

This article is from the June 2001 issue of the Java Developer' Journal. You need to be a registered JDJ subscriber to view this article.

Author: | Neal Ford
URL: | http://www.sys-con.com/java/archivesa.cfm?volume=06&issue=06

#### Using Ant and Weblogic EJBs

This article describes how to use Ant to create Weblogic EJBs, and some workarounds for issues you may encounter.

Author: | Jesse E. Tilly
URL: | http://www.onjava.com/pub/a/onjava/2001/06/25/antejb.html

#### Using JavaScript with Ant

A tutorial about using JavaScript and XSLT with Ant.

Author: | Dylan Schiemann
URL: | http://www.sitepen.com/ant/javascript.html

#### Building with Ant

Series of articles that describe a framework for web application development based on Ant and JUnit.

Author: | Alex Chaffee
URL: | Introduction: http://softwaredev.earthweb.com/sdtech/article/0,,12065_989631,00.html Directory Structure: http://softwaredev.earthweb.com/sdtech/article/0,,12082_994991,00.html Deployment and Distribution: http://softwaredev.earthweb.com/sdtech/article/0,,12077_998241,00.html

#### Developing with JAXB and Ant

Series of articles that shows how to use Ant together with the Java API for XML Binding (JAXB).

Author: | Joseph Shelby
URL: | http://www.onjava.com/pub/a/onjava/2002/03/06/jaxant1.html http://www.onjava.com/pub/a/onjava/2002/03/13/jaxbant2.html

### Presentations

#### Ant Build Tool

A PowerPoint presentation on Ant 1.2. It provides a basic overview of Ant's capabilities.

Author: | Patrick Chanezon
URL: | http://people.netscape.com/chanezon/tech/ant/ant_preso.ppt

#### Ant

A detailed Ant 1.3 PowerPoint presentation, made at the St. Louis Java Users Group meeting in March 2001. Includes a detailed build file and basic descriptions of all the built in and optional tasks. Updated for Ant 1.4 in October 2001. Available in PDF format now.

Author: | Mark Volkmann
URL: | http://www.ociweb.com/jnb/files/Ant.pdf