SIMPLE SOLUTIONS

BUILD.XML - reference manual online

Configuration file used by Apache Ant to build projects.

Chapter
February 2010
build.xml(5)                           File Formats Manual                           build.xml(5)

NAME build.xml - configuration file used by Apache Ant to build projects
DESCRIPTION The file build.xml is the default configuration file used by ant to determine target to build for a specific project. It can be considered the ant equivalent of Makefile. The format of ant is XML and for each project a separate file is constructed. The build‐ file consists of one or more tasks. An example is given below. <project default="compile"> <target name="compile"> <javac srcdir="src"/> </target> </project> This example has one target and it is defaulted. The target itself consists of one task javac which compiles the files in the src directory.
TARGETS Targets can depend on other targets. These dependencies are given by the depends attribute of the <target> element.
TASKS A task is a piece of code that is executed. Ant recognizes built-in task, optional tasks, but one can also write new tasks. Built-in tasks The built-in tasks are: Ant, AntCall, AntStructure, AntVersion, Apply, Apt, Available, Basename, BuildNumber, BUnzip2, BZip2, Checksum, Chmod, Concat, Condition, Copy, Compo‐ nentdef, Cvs, CvsChangeLog, CvsVersion, CVSPass, CvsTagDiff, Defaultexcludes, Delete, Del‐ tree, Dependset, Diagnostics, Dirname, Ear, Echo, EchoXML, Exec, Fail, Filter, FixCRLF, GenKey, Get, HostInfo, GUnzip, GZip, Import, Include, Input, Jar, Java, Javac, Javadoc, Length, LoadFile, LoadProperties, LoadResource, Local, MakeURL, Mail, MacroDef, Manifest, ManifestClassPath, Mkdir, Move, Nice, Parallel, Patch, PathConvert, PreSetDef, Property, PropertyHelper, Record, Replace, ResourceCount, Retry, Rmic, Sequential, SignJar, Sleep, Sql, SubAnt, Sync, Tar, Taskdef, Tempfile, Touch, Truncate, TStamp, Typedef, Unjar, Untar, Unwar, Unzip, Uptodate, Waitfor, WhichResource, War, XmlProperty, XSLT, Zip Java Executes a Java class within the running (Ant) VM or forks another VM if specified. Below are some of the attibutes to the <java> element: classname (required) the Java class to execute fork if enabled triggers the class execution in another VM (disabled by default) jvm the command used to invoke the Java Virtual Machine, default is java. The com‐ mand is resolved by java.lang.Runtime.exec(). Ignored if fork is disabled. Other arguments are classpath, classpathref, maxmemory, failonerror, dir and out‐ put. Javac Compiles a source tree within the running (Ant) VM. srcdir (required) location of the java files destdir location to store the class files debug indicates whether source should be compiled with debug information; defaults to off target generate class files for specific VM version (e.g., 1.4, 1.5, etc). includes comma-separated list of patterns of files that must be included; all files are included when omitted excludes comma-separated list of patterns of files that must be excluded; no files (except default excludes) are excluded when omitted. defaultexcludes indicates whether default excludes should be used (yes | no); default excludes are used when omitted. Other arguments are includesfile, excludesfile, classpath, bootclasspath, class‐ pathref, bootclasspathref, extdirs, encoding, deprecation, verbose, includeAntRun‐ time, includeJavaRuntime and failonerror.
Properties A project can have a set of properties, which consist of a name value combination. Within tasks they can be used by placing them between "${" and "}", as in "${builddir}/classes". Built-in Properties Ant provides access to all system properties as if they had been defined using a <prop‐ erty> task. For example, ${os.name} expands to the name of the operating system. basedir the absolute path of the project's basedir (as set with the basedir attribute of <project>). ant.file the absolute path of the buildfile. ant.version the version of Ant. ant.project.name the name of the project that is currently executing; it is set in the name attribute of <project>. ant.java.version the JVM version Ant detected.
Classpath The classpath can be set by using the <classpath> element: <classpath> <pathelement path="${classpath}"/> <pathelement location="lib/helper.jar"/> <fileset dir="lib"> <include name="**/*.jar"/> </fileset> </classpath>
SEE ALSO ant(1)
AUTHOR This manpage is made by Egon Willighagen <@sci.kun.nl> and based on the Ant Manual <http://ant.apache.org/manual/>.
Debian Linux February 2010 build.xml(5)
This manual Reference Other manuals
build.xml(5) referred by
refer to ant(1)