|
This example shows how to generate the build.xml file. You may say that build.xml file is the backbone of ANT (Another Neat Tool) technology. Each build.xml file contains only one project name and at least one target. The project tag has only three attributes:
|
Attribute
|
Description
|
Requirement
|
|
name
|
project name
|
not necessary
|
|
default
|
target name which called by default
|
not necessary
|
|
basedir
|
the base directory having all path, it contain absolute path
|
not necessary
|
The project tag is used to create our project and its attributes are used to handle further processing of the project. The name attribute is used to specify the project name and the default attribute is used to specify which target will be called as default when the program will run and the basedir attribute is used to calculate the absolute path of the parent directory.
|
Attribute
|
Description
|
Requirement
|
|
name
|
target name
|
necessary
|
|
depends
|
depends on another target
|
not necessary
|
In the target tag, name attribute is used for target name and the depends attribute is used to give sequence of target, i.e., which target will execute first, one target may depend on one or more other targets. The if attribute is used in case of condition, whether property exists or not; then this target will be executed and unless attribute is used as like else condition whether property does not exist, the target will not be executed and the description attribute is used for only giving details about target.
|
Attribute
|
Description
|
Requirement
|
|
name
|
name of the property, which is case-sensitive
|
not necessary
|
|
value
|
name of task attribute, this is done by placing the property name between "${"name }" in the attribute value
|
necessary
|
|
location
|
it contain property name
|
not necessary
|
|
file
|
name of the property file
|
not necessary
|
In the property tag, name attribute is used for property name; it is case sensitive. The value tag is used to give the task which will be the name of property in this format "${name}", and the location tag is used to specify the location of task where it performs and the file tag is used to import all properties of ant file. The complete build.xml file structure is as follows:
<project name="My Project" default="compile" basedir=".">
<property name="build" value="${build}"/>
<property name="src" location="src"/>
<property file="build.properties"/>
<project name="My Project" default="jar" basedir=".">
<property name="dir.src" value="src"/>
<property name="dir.build" value="build"/>
<property name="dir.dest" value="dest"/>
<target name="clean" description="Removing the all generated files.">
<delete dir="${dir.build}"/>
<delete dir="${dir.dest}"/>
</target>
<target name="prepare" depends="clean">
<mkdir dir="${dir.build}"/>
<mkdir dir="${dir.dest}"/>
<mkdir dir="${dir.src}"/>
</target>
<target name="compile" depends="prepare" description="Compilation of all source code.">
<javac srcdir="${dir.src}" destdir="${dir.build}"/>
</target>
<target name="jar" depends="compile" description="Generates Roseindia.jar file in to the 'dest' directory.">
<jar jarfile="${dir.dest}/roseindia.jar" basedir="${dir.build}"/>
</target>
</project>
<target name="buildWar" depends="init" description="build a war file"/>
<target name="init" if="build"/>
<target name="init" unless="build"/>
|
|