- ANT - Listeners and Loggers
- ANT - Custom Components
- ANT - Using If Else arguments
- ANT - Using Command Line Arguments
- ANT - Using Token
- ANT - Extending Ant
- ANT - JUnit Integration
- ANT - Eclipse Integration
- ANT - Executing Java code
- ANT - Deploying Applications
- ANT - Packaging Applications
- ANT - Create WAR Files
- ANT - Creating JAR files
- ANT - Build Documentation
- ANT - Building Projects
- ANT - Data Types
- ANT - Property Files
- ANT - Property Task
- ANT - Build Files
- ANT - Environment Setup
- ANT - Introduction
- ANT - Home
Apache ANT Resources
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Ant - Build Files
Typically, Ant s build file, called build.xml should reside in the base directory of the project. However, there is no restriction on the file name or its location. You are free to use other file names or save the build file in some other location.
For this exercise, create a file called build.xml anywhere in your computer with the following contents −
<?xml version="1.0"?> <project name="Hello World Project" default="info"> <target name="info"> <echo>Hello World - Welcome to Apache Ant!</echo> </target> </project>
Note that there should be no blank pne(s) or whitespace(s) before the xml declaration. If you allow them, the following error message occurs while executing the ant build −
The processing instruction target matching "[xX][mM][lL]" is not allowed. All build files require the project element and at least one target element.
The XML element project has three attributes which are as follows −
Sr.No | Attributes & Description |
---|---|
1 | name The Name of the project. (Optional) |
2 | default The default target for the build script. A project may contain any number of targets. This attribute specifies which target should be considered as the default. (Mandatory) |
3 | basedir The base directory (or) the root folder for the project. (Optional) |
A target is a collection of tasks that you want to run as one unit. In our example, we have a simple target to provide an informational message to the user.
Targets can have dependencies on other targets. For example, a deploy target may have a dependency on the package target, the package target may have a dependency on the compile target and so forth. Dependencies are denoted using the depends attribute.
For example −
<target name="deploy" depends="package"> .... </target> <target name="package" depends="clean,compile"> .... </target> <target name="clean" > .... </target> <target name="compile" > .... </target>
The target element has the following attributes −
Sr.No | Attributes & Description |
---|---|
1 | name The name of the target (Required) |
2 | depends Comma separated pst of all targets that this target depends on. (Optional) |
3 | description A short description of the target. (optional) |
4 | if Allows the execution of a target based on the trueness of a conditional attribute. (optional) |
5 | unless Adds the target to the dependency pst of the specified Extension Point. An Extension Point is similar to a target, but it does not have any tasks. (Optional) |
The echo task in the above example is a trivial task that prints a message. In our example,it prints the message Hello World.
To run the ant build file, open up command prompt and navigate to the folder, where the build.xml resides, and then type ant info. You could also type ant instead. Both will work,because info is the default target in the build file.
You should see the following output −
C:>ant Buildfile: C:uild.xml info: [echo] Hello World - Welcome to Apache Ant! BUILD SUCCESSFUL Total time: 0 seconds C:>Advertisements