The final version of Ant 1.5.2 is now available for
download.
If you have any feedback on this release, feel free to join the
discussion on the dev and user mailing lists.
The Apache board created
the Apache Ant top level project. Ant has now migrated from the Jakarta
@@ -255,29 +251,29 @@
Jakarta project. One effect of this change is that the Ant webpage
is now located at http://ant.apache.org
The final version of Ant 1.5.1 is now available for
download. If you have any feedback on this release, feel free to join the
discussion on the ant-dev and ant-user mailing lists.
The first beta version of Ant 1.5.1 is now available for
download. If you have any feedback on the beta feel free to join the
discussion on the ant-dev and ant-user mailing lists.
July 15, 2002 - Fix for Cygwin problem in wrapper script available
The wrapper script of Ant 1.5 needs to be replaced with a new
version for Cygwin users. See the FAQ for details.
@@ -287,37 +283,37 @@
download. If you have any feedback on this release, feel free to join the
discussion on the ant-dev and ant-user mailing lists.
-
-
The third beta version of Ant 1.5 is now available for
download. If you have any feedback on the beta feel free to join the
discussion on the ant-dev and ant-user mailing lists.
The second beta version of Ant 1.5 is now available for
download. If you have any feedback on the beta feel free to join the
discussion on the ant-dev and ant-user mailing lists.
The first beta version of Ant 1.5 is now available for
download. If you have any feedback on the beta feel free to join the
discussion on the ant-dev and ant-user mailing lists.
Java 1.4 has now been released by Sun. The latest Ant source supports
@@ -353,24 +349,24 @@
on Java 1.4 over Windows XP. If you have problems running Ant 1.4.1 on WinXP/Java 1.4,
please use a recent build or compile your own version from the source tree.
+
+ Ant 2.0 Requirements Collected - Next is Design
+
A commented version of the collected user requirements is now
available here - it is not
complete as some details still have to be defined, but it should
@@ -379,16 +375,16 @@
and prototypes. Several people are working on prototypes (that
can be found in Ant's CVS module in the proposals directory) and
discussion is going on on the Ant-Dev mailing list.
Ant has been in use for quite some time and has been used in ways never conceived when it
was originally written. While Ant 1.x has continued to sucessfully evolve and grow, there
are a number of limitations and inconsistencies that are now apparent and which need to
diff --git a/docs/bindownload.html b/docs/bindownload.html
index a272d9168..b80d12412 100644
--- a/docs/bindownload.html
+++ b/docs/bindownload.html
@@ -1,7 +1,7 @@
-
+
Use the links below to download a binary distribution of Ant from
one of our mirrors. You mustverify the integrity of the
@@ -223,10 +219,10 @@ project provides RPMs at their own distribution site.
You are currently using [preferred]. If you encounter a
problem with this mirror, please select another mirror. If all
mirrors are failing, there are backup mirrors (at the end of
@@ -245,10 +241,10 @@ Other mirrors:
-
-
Older releases of Ant can be found here. Those
releases are only provided as zip archives that can be
extracted by jar xf archive.zip - we highly
recommend to not use those releases but upgrade to Ant's latest release.
It is essential that you verify the integrity of the downloaded
files using the PGP or MD5 signatures.
The PGP signatures can be verified using PGP or GPG. First
diff --git a/docs/contributors.html b/docs/contributors.html
index 42c3b8c48..11ebbb372 100644
--- a/docs/contributors.html
+++ b/docs/contributors.html
@@ -1,7 +1,7 @@
-
+
Bruce Atherton (bruce at callenish.com - http://www.callenish.com/~bruce)
@@ -293,15 +284,10 @@ the development of administration tools and development environment for
the IMPRESS Engine, a Java-based intergration software. At the Ant-Project
he takes care of Antidote - the Ant GUI.
-
-
-
-
-
- Emeritus Members
-
-
-
+
+
+ Emeritus Members
+
James Duncan Davidson (duncan at x180.net - http://x180.net/)
@@ -317,19 +303,14 @@ Project a reality and served as the first Chairman of the Jakarta PMC.
@@ -429,15 +410,10 @@ implementing the CORBA IDL to C++ 2.0 mapping, skydiving, IDL to Java
compilers, Object Databases (SIGSEV, you da man!) for C++, Java ORB
and EJB runtime environments -- in that order.
-
-
-
-
-
- Emeritus Committers
-
-
-
+
+
+ Emeritus Committers
+
Simeon H.K. Fitch (simeon.fitch at mseedsoft.com)
@@ -466,10 +442,10 @@ Glenn McAllister is a software developer at SOMA Networks, was formerly
the same at IBM (plus tech writer plus build guy), and does some writing
on the side for the VADD Technical Journal.
Anyone can checkout source code from our anonymous CVS
server. To do so, simply use the following commands (if you are
using a GUI CVS client, configure it appropriatly):
AspectJ is an
aspect-oriented extension to Java. This task compiles a
source tree using the AspectJ compiler -- AJC.
@@ -276,15 +267,10 @@
-
-
-
-
-
- Anakia
-
-
-
+
+
+ Anakia
+
Actually, Anakia is more than just an Ant task, it is a an
XML transformation tool based on JDOM, Velocity and Ant.
@@ -329,15 +315,10 @@
-
-
-
-
-
- Anteater
-
-
-
+
+
+ Anteater
+
Anteater is a set of Ant tasks for the functional testing of websites
and web services (functional testing being; hit a URL and ensure the
response meets certain criteria). Can test HTTP params, response
@@ -388,15 +369,10 @@
-
-
-
-
-
- Checkstyle
-
-
-
+
+
+ Checkstyle
+
Checkstyle is a development tool to help programmers write
Java code that adheres to a coding standard. Its purpose is to
automate the process of checking Java code, and to spare
@@ -447,15 +423,10 @@
-
-
-
-
-
- ChownTask
-
-
-
+
+
+ ChownTask
+
ChownTask is an Ant task to change ownership of files on
Unix.
@@ -503,15 +474,10 @@
-
-
-
-
-
- CleanImports
-
-
-
+
+
+ CleanImports
+
Removes unneeded imports. Formats your import
sections. Flags ambiguous imports.
@@ -556,15 +522,10 @@
-
-
-
-
-
- Clover
-
-
-
+
+
+ Clover
+
Clover is an Ant-based Code Coverage tool. It can be used
seamlessly with Ant-based projects. It provides method,
statement, and branch coverage analysis, and has rich
@@ -612,15 +573,10 @@
-
-
-
-
-
- Configure
-
-
-
+
+
+ Configure
+
Recursive build support (call ant on every package level,
and only build files in that package or in that package and
everything below) with seperation of source and output.
@@ -670,15 +626,10 @@
-
-
-
-
-
- CVSGrab
-
-
-
+
+
+ CVSGrab
+
A little CVS client that can be useful when people are
behind corporate firewall that blocks any cvs
communications. It uses the ViewCVS web interface to access
@@ -728,15 +679,10 @@
-
-
-
-
-
- Doxygen task
-
-
-
+
+
+ Doxygen task
+
There are two Ant tasks for running the Doxygen
documentation system.
@@ -824,15 +770,10 @@
-
-
-
-
-
- GenJar
-
-
-
+
+
+ GenJar
+
Builds a JAR file based on class dependencies rather than simply the contents of a directory
@@ -876,15 +817,10 @@
-
-
-
-
-
- Greebo
-
-
-
+
+
+ Greebo
+
Greebo is an Ant-task for downloading dependency files
(currently only jars) from a network to a specified directory,
much like Maven. It supports multiple local and remote
@@ -934,15 +870,10 @@
-
-
-
-
-
- Importscrubber
-
-
-
+
+
+ Importscrubber
+
Removes unnecessary import statements from a Java source code file.
@@ -986,15 +917,10 @@
-
-
-
-
-
- Interactive
-
-
-
+
+
+ Interactive
+
Task allowing to run a dialog within a build used to setup
some properties. This way you can fill a property with the
input of a user.
@@ -1040,15 +966,10 @@
-
-
-
-
-
- IsDirValidator
-
-
-
+
+
+ IsDirValidator
+
Checks whether a given directory structure conforms to
certain rules that are defined via nested elements of the
task.
This set supports CLDC and the K Virtual Machine (KVM):
@@ -1290,15 +1206,10 @@
-
-
-
-
-
- Jacson
-
-
-
+
+
+ Jacson
+
Jacson is a configurable and plugable tool (much like Ant
itself) to create filters for text (line based) files without
programming.
@@ -1345,15 +1256,10 @@
-
-
-
-
-
- Jalopy
-
-
-
+
+
+ Jalopy
+
An Ant Plug-in for the Java Source Code Formatter
Jalopy.
@@ -1400,15 +1306,10 @@
-
-
-
-
-
- Java+ Precompile Task
-
-
-
+
+
+ Java+ Precompile Task
+
Java+ is an open source Java preprocessorthat adds these
features to any Java compiler:
@@ -1476,15 +1377,10 @@
-
-
-
-
-
- Java2Html
-
-
-
+
+
+ Java2Html
+
Uses the Java2Html library for converting java source files
or snipplets to syntax highlighted html, rtf, tex and
others.
@@ -1530,15 +1426,10 @@
-
-
-
-
-
- Javamake
-
-
-
+
+
+ Javamake
+
A task to compile Java sources and manage class file
dependencies. Functionality is equivalent to that of standard
Javac and Depend tasks combined, with improved dependency
@@ -1585,15 +1476,10 @@
-
-
-
-
-
- javarec
-
-
-
+
+
+ javarec
+
Ant tasks that generate record classes for VisualAge for
Java from Cobol copy books.
@@ -1638,15 +1524,10 @@
-
-
-
-
-
- JCSC
-
-
-
+
+
+ JCSC
+
JCSC is a Java Coding Standard Checker which also features
the generation of some code metrics. It is a command line tool
with an Ant task to scan whole package trees. The result can
@@ -1693,15 +1574,10 @@
-
-
-
-
-
- JFlex
-
-
-
+
+
+ JFlex
+
JFlex is a lexical analyzer generator (also known as
scanner generator) for Java, written in Java.
@@ -1746,15 +1622,10 @@
-
-
-
-
-
- Jing Task
-
-
-
+
+
+ Jing Task
+
Validates XML files against the RELAX NG alternative to XML Schema.
The Jing task for Ant allows you to efficiently validate
multiple files against multiple RELAX NG patterns and integrate
@@ -1792,15 +1663,10 @@
-
-
-
-
-
- jMetra
-
-
-
+
+
+ jMetra
+
jMetra is a tool for collecting code metrics across a
project lifecycle and compiling the results into
JavaDoc-styled documentation to analyze project metrics over
@@ -1856,15 +1722,10 @@
-
-
-
-
-
- JNI
-
-
-
+
+
+ JNI
+
JNI is a free toolkit that makes easy work of
@@ -1924,15 +1785,10 @@
-
-
-
-
-
- JRun Ant Tasks
-
-
-
+
+
+ JRun Ant Tasks
+
JRun 4 SP1 ships with lib/jrun-ant-tasks.jar, which defines
three Ant tasks: jrun, jrunapp, and jrunjmx. Documentation
for the tasks can be found in JRun under
@@ -1981,15 +1837,10 @@
-
-
-
-
-
- Macker
-
-
-
+
+
+ Macker
+
A build-time architectural testing tool, designed
to maintain clean layering / tiering / modularity.
Macker works against compiled class files, checking
@@ -2040,15 +1891,10 @@
-
-
-
-
-
- pack
-
-
-
+
+
+ pack
+
pack is a task to build the smallest possible JAR to link
and run one or more classes.
Purge deletes all but the most recent few files from a fileset.
For example: if you have generated files (logs, .ear, .war, .jar
etc) accumulating in a directory, the purge task will allow you
@@ -2201,15 +2037,10 @@
-
-
-
-
-
- SerialVer
-
-
-
+
+
+ SerialVer
+
SerialVer adds the Java serialver functionality to Apache
Ant. This project adds Tasks and FilterReaders to get, to
insert and to modify the serialVersionUID in the source code
@@ -2256,15 +2087,10 @@
-
-
-
-
-
- SmartAnalyzer
-
-
-
+
+
+ SmartAnalyzer
+
Powerful analysis of dependencies between Java classes.
Only affected classes will be recompiled and it can be used
with any bytecode compiler.
@@ -2310,15 +2136,10 @@
-
-
-
-
-
- Styler
-
-
-
+
+
+ Styler
+
The styler task makes useful combinations of XSLT transformations
easy to specify in an Ant build file. Like the built-in Ant task
style, styler can apply a single transformation to a set of XML files.
@@ -2374,15 +2195,10 @@
-
-
-
-
-
- Syntax
-
-
-
+
+
+ Syntax
+
Transforms source files into HTML documents with syntax
highlighting. It can handle a variety of source files
including Java, HTML, C/C++, SQL, and Java properties. Colors
@@ -2431,15 +2247,10 @@
-
-
-
-
-
- Tidy Imports (Tim)
-
-
-
+
+
+ Tidy Imports (Tim)
+
Tim is a handy utility that can be executed on the command
line or via Ant that automatically formats your import
declarations. Tim is capable of removing unused imports,
@@ -2487,15 +2298,10 @@
-
-
-
-
-
- TiniAnt
-
-
-
+
+
+ TiniAnt
+
TiniAnt is an Ant task to support building applications for
the TINI.
@@ -2540,15 +2346,10 @@
-
-
-
-
-
- Venus Application Publisher's (Vamp) Ant Task Suite
-
-
-
+
+
+ Venus Application Publisher's (Vamp) Ant Task Suite
+
Venus Application Publisher's (Vamp) Ant Task Suite allows
you to sign and package your applications into relocatable Web
Archives that you can drop into your web server for
@@ -2597,15 +2398,10 @@
-
-
-
-
-
- Version_Tool
-
-
-
+
+
+ Version_Tool
+
A versioning tool for Ant.
@@ -2649,15 +2445,10 @@
-
-
-
-
-
- VPP
-
-
-
+
+
+ VPP
+
VPP provides general file preprocessing support based on
the Velocity Template Engine. The core funtionality is
provided as a filter for use with tasks that supports filter
@@ -2705,15 +2496,10 @@
-
-
-
-
-
- WOProject
-
-
-
+
+
+ WOProject
+
WOProject provides a set of tools to work with
WebObjects 5.1
independent from platform and IDE. It significantly
@@ -2763,15 +2549,10 @@
-
-
-
-
-
- XDoclet
-
-
-
+
+
+ XDoclet
+
XDoclet is an extended Javadoc Doclet engine for use in Ant.
It lets you create custom Javadoc @tags and based on those tags
generates source code or other files (such as xml-ish deployment
@@ -2810,15 +2591,10 @@
-
-
-
-
-
- XInclude
-
-
-
+
+
+ XInclude
+
XInclude is
a W3C standardized vocabulary for including arbitrary text or XML
documents in other XML documents. This task perfomes the inclusion
@@ -2867,15 +2643,10 @@
-
-
-
-
-
- XmlTask
-
-
-
+
+
+ XmlTask
+
XmlTask provides a simple means to modify XML documents
without having to learn XSLT. A simple path reference to an
XML node specifies the node you want to change, and how you
@@ -2924,15 +2695,10 @@
-
-
-
-
-
- yGuard
-
-
-
+
+
+ yGuard
+
yGuard is a free Java(TM) Bytecode Obfuscator Task that
needs no external script or project files. It can completely
be configured and run through the Ant build script. The task
@@ -2983,19 +2749,14 @@
-
-
This is an Ant compiler-adapter that allows you to use the
normal <javac> task plus Sun's early-access
compiler to compile Generics-enabled Java code. (This is only
@@ -3042,15 +2803,10 @@
-
-
-
-
-
- miniRMI <rmic> implementation
-
-
-
+
+
+ miniRMI <rmic> implementation
+
miniRMI is a freeware opensource library that serves as a
lightweight replacement for the original java.rmi packages and
is suitable especially for applets. Ant 1.4+
@@ -3097,19 +2853,14 @@
-
-
A plugin that integrates Ant into the jEdit editor.
@@ -3153,15 +2904,10 @@
-
-
-
-
-
- AntMan
-
-
-
+
+
+ AntMan
+
An AddIn that integrates Ant with the JDeveloper IDE
@@ -3205,15 +2951,10 @@
-
-
-
-
-
- AntRunner
-
-
-
+
+
+ AntRunner
+
An OpenTool that integrates Ant into the JBuilder IDE.
@@ -3257,15 +2998,10 @@
-
-
-
-
-
- AntWork
-
-
-
+
+
+ AntWork
+
A plugin that integrates Ant into the Jext editor.
@@ -3309,15 +3045,10 @@
-
-
-
-
-
- Eclipse
-
-
-
+
+
+ Eclipse
+
Eclipse is a universal tool platform with Ant integration.
@@ -3361,15 +3092,10 @@
-
-
-
-
-
- Gel
-
-
-
+
+
+ Gel
+
Java IDE with support for Ant. Gel is a native Microsoft
Windows software.
@@ -3414,15 +3140,10 @@
-
-
-
-
-
- HP RadPak
-
-
-
+
+
+ HP RadPak
+
RadPak comes with the (free) HP Bluestone HPAS J2EE server, and is primarily
a GUI tool for packaging and deploying java web and EJB applications
@@ -3464,15 +3185,10 @@
-
-
-
-
-
- IntelliJ IDEA 2.0
-
-
-
+
+
+ IntelliJ IDEA 2.0
+
Java IDE with refactoring support and Ant integration.
@@ -3516,15 +3232,10 @@
-
-
-
-
-
- JBuilder 8 Enterprise
-
-
-
+
+
+ JBuilder 8 Enterprise
+
JBuilder 8 Enterprise and "Performance Bundle"
come with built-in Ant support. JBuilder 8 Personal and SE
don't support Ant directly, but an
@@ -3571,15 +3282,10 @@
-
-
-
-
-
- JDE(E) 2.2.8
-
-
-
+
+
+ JDE(E) 2.2.8
+
The Java Development Environment for Emacs (JDEE) supports
Apache Ant as one of three built-in ways to build your
applications.
@@ -3625,15 +3331,10 @@
-
-
-
-
-
- NetBeans / Sun ONE Studio
-
-
-
+
+
+ NetBeans / Sun ONE Studio
+
A module that integrates Ant into the NetBeans or Sun ONE Studio (formerly Forte for Java) IDEs.
@@ -3677,15 +3378,10 @@
-
-
-
-
-
- Oracle9i JDeveloper
-
-
-
+
+
+ Oracle9i JDeveloper
+
Java IDE with support for Ant.
@@ -3729,15 +3425,10 @@
-
-
-
-
-
- WebSphere Studio Application Developer
-
-
-
+
+
+ WebSphere Studio Application Developer
+
WSAD features Ant integrate by virtue of being built on the Eclipse tools platform.
The page you are looking it is generated from
this
document. If you want to add a new question, please submit
@@ -465,18 +391,11 @@
If you don't know how to create a patch, see the patches
section of this
page.
-
+
-
-
-
-
- How do you create the HTML version of this
+ How do you create the HTML version of this
FAQ?
-
-
-
-
+
We use
Anakia
to render the HTML version from the original XML file.
@@ -490,31 +409,17 @@
if you follow the instruction from Anakia's homepage, you
should get it to work without that. Just make sure all
required jars are in the task's classpath.
-
+
-
-
-
-
- What is Apache Ant?
-
-
-
-
+ What is Apache Ant?
+
Ant is a Java-based build tool. In theory, it is kind of
like Make, without Make's wrinkles and with the full
portability of pure Java code.
-
+
-
-
-
-
- Why do you call it Ant?
-
-
-
-
+ Why do you call it Ant?
+
According to Ant's original author, James Duncan
Davidson, the name is an acronym for "Another Neat
Tool".
@@ -523,17 +428,10 @@
"ants are very small and can carry a weight dozens of times
their own" - describing what Ant is intended to
be.
-
+
-
-
-
-
- Tell us a little bit about Ant's history.
-
-
-
-
+ Tell us a little bit about Ant's history.
+
Initially, Ant was part of the Tomcat code base, when it was
donated to the Apache Software Foundation. It was
created by James Duncan Davidson, who is also the original
@@ -646,18 +544,11 @@
-
+
-
-
-
-
- I get checksum errors when I try to extract the
+ I get checksum errors when I try to extract the
tar.gz distribution file. Why?
-
-
-
-
+
Ant's distribution contains file names that are longer
than 100 characters, which is not supported by the standard
tar file format. Several different implementations of tar use
@@ -672,18 +563,11 @@
found here,
or use the zip archive instead (you can extract it using
jar xf).
-
+
-
-
-
-
- How do I add an external task that I've written to the
+ How do I add an external task that I've written to the
page "External Tools and Task"?
-
-
-
-
+
Join and post a message to the dev or user mailing
list (one list is enough), including the following
information:
@@ -704,36 +588,22 @@
The preferred format for this information is a patch to this
document.
-
+
-
-
-
-
- How do I pass parameters from the command line to my
+ How do I pass parameters from the command line to my
build file?
-
-
-
-
+
Use properties. Using ant
-Dname=value lets you define values for
properties on the Ant command line. These properties can then be
used within your build file as
any normal property: ${name} will put in
value.
-
+
-
-
-
-
- How can I use Jikes-specific command-line
+ How can I use Jikes-specific command-line
switches?
-
-
-
-
+
A couple of switches are supported via "magic"
properties:
@@ -814,33 +684,19 @@
With Ant >= 1.5, you can also use nested
<compilerarg> elements with the
<javac> task.
-
+
-
-
-
-
- How do I include a < character in my command-line arguments?
-
-
-
-
+ How do I include a < character in my command-line arguments?
+
The short answer is "Use: <".
The long answer is that this probably won't do what you
want anyway (see the next
section).
-
+
-
-
-
-
- How do I redirect standard input or standard output
+ How do I redirect standard input or standard output
in the <exec> task?
-
-
-
-
+
Say you want to redirect the standard input stream of the
cat command to read from a file, something
like:
Note the double-quotes nested inside the single-quotes.
-
+
-
-
-
-
- How do I execute a batch file or shell script from Ant?
-
-
-
-
+ How do I execute a batch file or shell script from Ant?
+
On native Unix systems, you should be able to run shell scripts
directly. On systems running a Unix-type shell (for example, Cygwin
on Windows) execute the (command) shell instead - cmd
@@ -899,18 +748,11 @@ shell-prompt> cat < foo
<arg line="/c test.bat"/>
</exec>
-
+
-
-
-
-
- I want to execute a particular target only if
+ I want to execute a particular target only if
multiple conditions are true.
-
-
-
-
+
There are actually several answers to this question.
If you have only one set and one unset property to test,
you can specify both an if and an unless
@@ -1011,18 +853,11 @@ shell-prompt> cat < foo
<script> task documentation for more
details.
-
+
-
-
-
-
- How can I include national characters like German
+ How can I include national characters like German
umlauts in my build file?
-
-
-
-
+
You need to tell the XML parser which character encoding
your build file uses, this is done inside the XML
declaration.
@@ -1034,17 +869,10 @@ shell-prompt> cat < foo
<?xml version="1.0" encoding="ISO-8859-1" ?>
-
+
-
-
-
-
- Why does Ant always recompile all my Java files?
-
-
-
-
+ Why does Ant always recompile all my Java files?
+
In order to find out which files should be compiled, Ant
compares the timestamps of the source files to those of the
resulting .class files. Opening all source files
@@ -1069,20 +897,13 @@ shell-prompt> cat < foo
the actual directory the source
files live in and the directory the class files should go into,
respectively.
-
+
-
-
-
-
- I've used a <delete> task to
+ I've used a <delete> task to
delete unwanted SourceSafe control files (CVS files, editor
backup files, etc.), but it doesn't seem to work; the files
never get deleted. What's wrong?
-
-
-
-
+
This is probably happening because, by default, Ant excludes
SourceSafe control files (vssver.scc) and certain other
files from FileSets.
@@ -1103,20 +924,13 @@ shell-prompt> cat < foo
For a complete listing of the patterns that are excluded
by default, see the user
manual.
-
+
-
-
-
-
- I have a target I want to skip if a property is set,
+ I have a target I want to skip if a property is set,
so I have unless="property" as an attribute
of the target, but all the targets this target
depends on are still executed. Why?
-
-
-
-
+
The list of dependencies is generated by Ant before any of the
targets are run. This allows dependent targets, such as an
init target, to set properties that can control the
@@ -1134,21 +948,14 @@ shell-prompt> cat < foo
instead of specifying them inside the depends
attribute.
-
+
-
-
-
-
- In my <fileset>, I've put in an
+ In my <fileset>, I've put in an
<exclude> of all files followed by an
<include> of just the files I want, but it
isn't giving me any files at all. What's wrong?
-
-
-
-
+
The order of the <include> and
<exclude> tags within a <fileset>
is ignored when the FileSet is created. Instead, all of the
@@ -1162,20 +969,13 @@ shell-prompt> cat < foo
to get them. If you find you need to trim the list that the
<include> elements produce, then use
<exclude> elements.
-
+
-
-
-
-
- ant failed to build my program via javac
+ ant failed to build my program via javac
even when I put the needed jars in an external
build.properties file and reference them by
pathelement or classpath refid.
-
-
-
-
+
When ant loads properties from an external
file it dosn't touch the value of properties, trailing blanks
will not be trimmed for example.
@@ -1183,19 +983,12 @@ shell-prompt> cat < foo
compile, the task which requires the value, javac for example
would fail to compile since it can't find the file due to
trailing spaces.
-
+
-
-
-
-
- Ant creates WAR files with a lower-case
+ Ant creates WAR files with a lower-case
web-inf or JAR files with a lower-case
meta-inf directory.
-
-
-
-
+
No it doesn't.
You may have seen these lower-case directory names in
WinZIP, but WinZIP is trying to be helpful (and fails). If
@@ -1204,31 +997,17 @@ shell-prompt> cat < foo
all lower-case for you.
If you extract (or just check) the archive with jar, you
will see that the names have the correct case.
Ant adds a "banner" with the name of the current
task in front of all logging messages - and there are no built-in
regular expressions in your editor that would account for
@@ -1281,18 +1060,11 @@ while(<STDIN>) {
print;
};
-
+
-
-
-
-
- Is there a DTD that I can use to validate my build
+ Is there a DTD that I can use to validate my build
files?
-
-
-
-
+
An incomplete DTD can be created by the
<antstructure> task - but this one
has a few problems:
@@ -1317,17 +1089,10 @@ while(<STDIN>) {
lists. This problem cannot be solved; DTDs don't give a
syntax rich enough to support this.
-
+
-
-
-
-
- How do I include an XML snippet in my build file?
-
-
-
-
+ How do I include an XML snippet in my build file?
+
You can use XML's way of including external files and let
the parser do the job for Ant:
@@ -1357,18 +1122,11 @@ while(<STDIN>) {
<!ENTITY include SYSTEM "file:./header.xml">
]>
-
+
-
-
-
-
- How do I send an email with the result of my build
+ How do I send an email with the result of my build
process?
-
-
-
-
+
If you are using a nightly build of Ant 1.5 after
2001-12-14, you can use the built-in MailLogger:
@@ -1522,18 +1280,11 @@ ant -listener BuildMonitor -logfile build.log
activation.jar from the
Java
Beans Activation Framework are in your CLASSPATH.
-
+
-
-
-
-
- How do I get at the properties that Ant was running
+ How do I get at the properties that Ant was running
with from inside BuildListener?
-
-
-
-
+
You can get at a hashtable with all the properties that Ant
has been using through the BuildEvent parameter. For
example:
@@ -1547,18 +1298,11 @@ public void buildFinished(BuildEvent e) {
This is more accurate than just reading the same property
files that your project does, since it will give the correct
results for properties that were specified on the Ant command line.
-
+
-
-
-
-
- <chmod> or <exec> doesn't work in Ant
+ <chmod> or <exec> doesn't work in Ant
1.3 on Unix
-
-
-
-
+
The antRun script in ANT_HOME/bin
has DOS instead of Unix line endings; you must remove the
carriage-return characters from this file. This can be done by
@@ -1568,33 +1312,19 @@ public void buildFinished(BuildEvent e) {
tr -d '\r' < $ANT_HOME/bin/antRun > /tmp/foo
mv /tmp/foo $ANT_HOME/bin/antRun
-
+
-
-
- <style> or <junit> ignores my
+ <style> or <junit> ignores my
<classpath>
-
-
-
-
+
These tasks don't ignore your classpath setting, you
are facing a common problem with delegating classloaders.
First of all let's state that Ant adds all
@@ -1686,20 +1416,13 @@ mv /tmp/foo $ANT_HOME/bin/antRun
for <junit>, you still have to use a
<taskdef> with a nested
<classpath> to define the junit task.
-
+
-
-
-
-
- When running Ant 1.4 on Windows XP and JDK 1.4, I get
+ When running Ant 1.4 on Windows XP and JDK 1.4, I get
various errors when trying to <exec>, fork
<java> or access environment
variables.
-
-
-
-
+
Ant < 1.5 doesn't recognize Windows XP as a flavor
of Windows that runs CMD.EXE instead of
COMMAND.COM. JDK 1.3 will tell Ant that Windows
@@ -1709,19 +1432,12 @@ mv /tmp/foo $ANT_HOME/bin/antRun
environment variable ANT_OPTS to
-Dos.name=Windows_NT prior to invoking Ant has
been confirmed as a workaround.
-
+
-
-
-
-
- The ant wrapper script of Ant 1.5 fails
+ The ant wrapper script of Ant 1.5 fails
for Cygwin if ANT_HOME is set to a Windows style
path.
-
-
-
-
+
This problem has been reported only hours after Ant 1.5 has
been released, see Bug
10664 and all it's duplicates.
We are still in the process of defining the guidelines for this
project - to get an idea what they may look like, we want to point
you to the guidelines of the Jakarta
diff --git a/docs/index.html b/docs/index.html
index 404b94dc2..50a1acda9 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -1,7 +1,7 @@
-
+
Apache Ant is a Java-based build tool. In theory, it is kind of like
Make, but without Make's wrinkles.
@@ -262,10 +258,10 @@ And hey, if you really need to execute a shell command, Ant has an
allows different commands to be executed based on the OS that it is executing
on.
You can view the documentation for the current release (Apache Ant 1.5.2)
online
@@ -273,18 +269,18 @@ You can view the documentation for the current release (Apache Ant 1.5.2)
Comprehensive documentation is included in the source and binary distributions.
This list is for developers that are using Ant in their own
projects to ask questions, share knowledge, and discuss issues
related to using Ant as a build tool.
-
-
-
-
-
- Developer List
-
-
-
+
+
+ Developer List
+
High TrafficSubscribe
diff --git a/docs/mission.html b/docs/mission.html
index c49698b0f..6e121d777 100644
--- a/docs/mission.html
+++ b/docs/mission.html
@@ -1,7 +1,7 @@
-
+
This page details some steps you can take to try and resolve
any problems you may be having with Ant. If you find you can't
@@ -219,15 +215,10 @@
you may encounter - these are just some suggestions to point
you in the right direction.
-
-
-
-
-
- Read the Manual
-
-
-
+
+
+ Read the Manual
+
The first step to take when you have a problem with Ant is to read
the manual entry for the task or
@@ -238,15 +229,10 @@
documentation bug report (see below) to help us improve the Ant
documentation.
-
-
-
-
-
- Examine Debug Output
-
-
-
+
+
+ Examine Debug Output
+
If you're still having a problem, the next step is to try and
gather additional information about what Ant is doing.
@@ -340,15 +326,10 @@ D:\src\java\Unset.java
generated command line. This can help you to understand whether
you are using the correct attributes and values.
-
-
-
-
-
- Has It Been Fixed?
-
-
-
+
+
+ Has It Been Fixed?
+
After examining the debug output, if you still believe that the
problem you are having is caused by Ant, chances are that someone
@@ -369,15 +350,10 @@ D:\src\java\Unset.java
area. However, even this snapshot does not contain every
optional task.
-
-
-
-
-
- Has It Been Reported?
-
-
-
+
+
+ Has It Been Reported?
+
If the current nightly build doesn't resolve your problem, it is
possible that someone else has reported the issue. It is time to
@@ -395,15 +371,10 @@ D:\src\java\Unset.java
add yourself to the CC list to follow the progress
of this bug.
-
-
-
-
-
- Filing a Bug Report
-
-
-
+
+
+ Filing a Bug Report
+
By this time, you may have decided that there is an unreported
bug in Ant. You have a few choices at this point. You can send
@@ -437,15 +408,10 @@ D:\src\java\Unset.java
you receive email asking for further information, please try to
respond, as it will aid in the resolution of your bug.
-
-
-
-
-
- Asking for an Enhancement
-
-
-
+
+
+ Asking for an Enhancement
+
Sometimes, you may find that Ant just doesn't do what you need it
to. It isn't a bug, as such, since Ant is working the way it is
@@ -463,15 +429,10 @@ D:\src\java\Unset.java
enhancment requests that cover your needs. If so, just add your
vote to these.
-
-
-
-
-
- Fixing the Bug
-
-
-
+
+
+ Fixing the Bug
+
If you aren't satisfied with just filing a bug report, you can
try to find the cause of the problem and provide a fix yourself.
diff --git a/docs/projects.html b/docs/projects.html
index c30429f0a..d1631d579 100644
--- a/docs/projects.html
+++ b/docs/projects.html
@@ -1,7 +1,7 @@
-
+
Nothing listed here is directly supported by the Ant
developers, if you encounter any problems with them, please use
the contact information.
-
-
-
-
-
- AndroMDA
-
-
-
+
+
+ AndroMDA
+
AndroMDA is a code generator tool that follows the Model
Driven Architecture (MDA) paradigm. It takes a UML model from
a CASE-tool and generates classes and deployable components
@@ -268,15 +259,10 @@
-
-
-
-
-
- AntContrib
-
-
-
+
+
+ AntContrib
+
The Ant-Contrib project is a collection of user supplied
task (like an <if> task) and a development
playground for experimental tasks like a C/C++ compilation
@@ -323,15 +309,10 @@
-
-
-
-
-
- AntDoc
-
-
-
+
+
+ AntDoc
+
AntDoc is a tool that generates HTML documentation from Ant
buildfiles; the generated HTML is inspired from what javadoc
yields. It also offers a simple Ant target launcher named
@@ -381,15 +362,10 @@
-
-
-
-
-
- Antelope
-
-
-
+
+
+ Antelope
+
A GUI for running Ant and editing build files, can run as
stand-alone or as a plugin to jEdit. In addition to running
targets, Antelope can generate performance statistics and can
@@ -440,15 +416,10 @@
-
-
-
-
-
- AntHill
-
-
-
+
+
+ AntHill
+
Anthill is a build tool that promotes a controlled build
process by ensuring that every build reflects the source
repository contents and tagging the repository with a unique
@@ -498,15 +469,10 @@
-
-
-
-
-
- CruiseControl
-
-
-
+
+
+ CruiseControl
+
CruiseControl is a tool for setting up a continuous build
process. CruiseControl provides an Ant wrapper and a set of
tasks to automate the checkout/build/test cycle. CruiseControl
@@ -556,15 +522,10 @@
-
-
-
-
-
- Krysalis Centipede
-
-
-
+
+
+ Krysalis Centipede
+
Krysalis Centipede is a project build system based on
Apache Ant. Centipede uses pre-packaged modules called "cents"
that it downloads and installs automatically. Cents can be
@@ -621,15 +582,10 @@
-
-
-
-
-
- NAnt
-
-
-
+
+
+ NAnt
+
NAnt is a .NET based build tool. In theory it is kind of
like make without make's wrinkles. In practice it's a lot like
Ant.
@@ -675,15 +631,10 @@
-
-
-
-
-
- Rant
-
-
-
+
+
+ Rant
+
Rant stands for Remote Ant. It is a distributed build
system that allows an Ant build file to launch builds on other
systems and receive exceptions should they occur.
@@ -729,15 +680,10 @@
-
-
-
-
-
- XML Publication
-
-
-
+
+
+ XML Publication
+
XML Publication is a set of tools to generate Web pages
from desktop documents or other structured documents using
XSLT and Ant.
The purpose of this document is to communicate the overall
structure and design patters used in Antidote, the GUI for
Ant. This document is a work in progress, as well as a living
@@ -161,10 +157,10 @@
the source code. Therefore, if there is any doubt, view the source
;-)
The Antidote architecture design aims to provide a high level
of modularity and extensibility. Ideally the components of
Antidote will be able to be assembled in different configurations
@@ -187,10 +183,10 @@
application's structure. As the application grows, new components
will be plugged in to what will be described as the EventBus
Extensive use of the javax.swing.Action interface is
made for defining the set of menu and tool bar options that are
available. The configuration file action.properties
@@ -287,10 +283,10 @@
and then the code to respond to it is added to the
EventResponder (see below).
At some point in the stages of event processing, an event may
require the data model to be modified, or some other task be
performed. The Command interface is defined to classify
@@ -326,10 +322,10 @@
to a request may change, as well as who services it. This
design approach facilitates that.
NB: This part of the architecture is not fleshed out very well. There
needs to be a discussion of the degree to which the Antidote development
should be able to impose changes on the Ant data model, and to what level
@@ -340,10 +336,10 @@
model. Right now the data model is encapsulated in the package
org.apache.tools.ant.gui.acs (where "acs" stands for "Ant Construction Set").
In order to keep the coupling among application modules to a
minimum, a single point of reference is needed for coordination
and data sharing. The class AppContext is the catch-all
@@ -356,10 +352,10 @@
Antidote could conceivably share an AppContext instance
through RMI, allowing remote interaction/collaboration.)
Full "i18n" support should be assumed in modern applications,
and all user viewable strings should be defined in a configuration
file. For Antidote this configuration file is
diff --git a/docs/projects/antidote/index.html b/docs/projects/antidote/index.html
index 42ffac1ce..30590f357 100644
--- a/docs/projects/antidote/index.html
+++ b/docs/projects/antidote/index.html
@@ -1,7 +1,7 @@
-
+
... in fact it is the Ant GUI by the Apache Ant project itself, because,
as you might know, there are several other graphical user interfaces covering Ant.
@@ -170,10 +166,10 @@
build-files to be quite useful for the developer who do not use an IDE at all. So one of
the goals of Antidote development is to make it small, fast and really neat :)!
@@ -181,10 +177,10 @@
and you are welcome to contribute! It shows Antidote using a custom look and feel called
"Metouia" which you can find here if you want to try it!
-
-
The purpose of this document is to provide an overview of the
basic steps one must undertake to add a new module to
Antidote. Please see The Antidote
@@ -164,10 +160,10 @@
All modules must inherit from the AntModule
class. This will probably irritate some of you, but it essentially
diff --git a/docs/projects/index.html b/docs/projects/index.html
index e1241a3e2..24104993e 100644
--- a/docs/projects/index.html
+++ b/docs/projects/index.html
@@ -1,7 +1,7 @@
-
+
Now, that Ant has become an Apache Top-Level Project it is time to make space on this
Web-Page for Ant sub-projects. In the first step Antidote,
diff --git a/docs/resources.html b/docs/resources.html
index d2d6dd116..383e6c864 100644
--- a/docs/resources.html
+++ b/docs/resources.html
@@ -1,7 +1,7 @@
-
+
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.
-
- Ant in Anger: Using Ant in a Production Development System
-
-
-
+
+
+ Articles
+
+
+
+ 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.
@@ -476,15 +437,10 @@
-
-
-
-
-
- Ant Task Guidelines
-
-
-
+
+
+ Ant Task Guidelines
+
This document describes how to write custom Ant tasks, and how to submit
them to potentially be included in Ant.
@@ -509,15 +465,10 @@
-
-
-
-
-
- Automating the build and test process
-
-
-
+
+
+ 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.
@@ -541,15 +492,10 @@
-
-
-
-
-
- Incremental development with Ant and JUnit
-
-
-
+
+
+ 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.
@@ -575,15 +521,10 @@
-
-
-
-
-
- Automate your build process using Java and Ant
-
-
-
+
+
+ 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.
@@ -608,15 +549,10 @@
-
-
-
-
-
- Short tutorial in Cactus' (formerly J2EEUnit) documentation
-
-
-
+
+
+ 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.
@@ -642,15 +578,10 @@
-
-
-
-
-
- Developing custom Ant tasks with VisualAge for Java
-
-
-
+
+
+ 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.
@@ -676,15 +607,10 @@
-
-
-
-
-
- Automated builds with VisualAge for Java and Ant
-
-
-
+
+
+ Automated builds with VisualAge for Java and Ant
+
This article shows how you can perform command line builds with a
VisualAge for Java repository.
@@ -709,15 +635,10 @@
-
-
-
-
-
- Ant: A Build Tool from the Jakarta Project
-
-
-
+
+
+ Ant: A Build Tool from the Jakarta Project
+
This article is from the "Best Practices" section of
Sun's Dot-Com Builder Site.
@@ -742,15 +663,10 @@
-
-
-
-
-
- Making a Mountain Out of an Anthill
-
-
-
+
+
+ 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.
@@ -776,15 +692,10 @@
-
-
-
-
-
- Using Ant and Weblogic EJBs
-
-
-
+
+
+ Using Ant and Weblogic EJBs
+
This article describes how to use Ant to create Weblogic EJBs, and
some workarounds for issues you may encounter.
@@ -809,15 +720,10 @@
-
-
-
-
-
- An Introduction to Ant
-
-
-
+
+
+ An Introduction to Ant
+
This article is a short introduction into the basic
concepts of Ant.
@@ -842,15 +748,10 @@
-
-
-
-
-
- Using JavaScript with Ant
-
-
-
+
+
+ Using JavaScript with Ant
+
A tutorial about using JavaScript and XSLT with Ant.
@@ -874,15 +775,10 @@
-
-
-
-
-
- Building with Ant
-
-
-
+
+
+ Building with Ant
+
Series of articles that describe a framework for web
application development based on Ant and JUnit.
@@ -909,15 +805,10 @@
-
-
-
-
-
- Developing with JAXB and Ant
-
-
-
+
+
+ Developing with JAXB and Ant
+
Series of articles that shows how to use Ant together with
the Java API for XML Binding (JAXB).
-
- Ant - presented to the Tucson Java Users Group
-
-
-
+
+
+ Presentations
+
+
+
+ Ant - presented to the Tucson Java Users Group
+
A PowerPoint technical overview presentation on Ant. Comes complete with a straightforward example demonstrating code compilation, JAR'ing, JUnit testing, JUnit reporting, and Zipping a distribution. A few advanced topics are touched upon like property immutabality and using <antcall> to get around it, build listeners, and writing custom tasks.
@@ -979,15 +865,10 @@
-
-
-
-
-
- Ant Build Tool
-
-
-
+
+
+ Ant Build Tool
+
A PowerPoint presentation on Ant 1.2. It provides a basic overview
of Ant's capabilities.
@@ -1012,15 +893,10 @@
-
-
-
-
-
- Ant
-
-
-
+
+
+ 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.
@@ -1047,15 +923,10 @@
-
-
-
-
-
- Modern Development Crises
-
-
-
+
+
+ Modern Development Crises
+
This presentation is an overview of the current state of software
development today. There are a couple of slides that briefly cover
Ant.
Use the links below to download a source distribution of Ant from
one of our mirrors. You mustverify the integrity of the
@@ -221,10 +217,10 @@ Thus they must be untarred with a GNU compatible version of
You are currently using [preferred]. If you encounter a
problem with this mirror, please select another mirror. If all
mirrors are failing, there are backup mirrors (at the end of
@@ -243,10 +239,10 @@ Other mirrors:
-
-
Older releases of Ant can be found here. Those
releases are only provided as zip archives that can be
extracted by jar xf archive.zip - we highly
recommend to not use those releases but upgrade to Ant's latest release.
It is essential that you verify the integrity of the downloaded
files using the PGP or MD5 signatures.
The PGP signatures can be verified using PGP or GPG. First
diff --git a/xdocs/stylesheets/site.vsl b/xdocs/stylesheets/site.vsl
index 5127b62d6..a0bd88d29 100644
--- a/xdocs/stylesheets/site.vsl
+++ b/xdocs/stylesheets/site.vsl
@@ -68,15 +68,10 @@
## This is where the common page macro's live
#macro ( subsection $subsection)
-
-
-
#foreach ( $items in $section.getChildren() )
#if ($items.getName().equals("img"))
#image ($items)
@@ -113,14 +108,7 @@
## This is where the FAQ specific macro's live
#macro (toc $section)
-
-