Writing simple ANT build script

Apache Ant Example

This article explains how to write a very basic ANT build script. This does not explain indepth knowledge on building your project using ANT script. But, this writeup will be more useful for the beginners who haben’t writen any ANT script before. Before start writing the script, lets look into how to install the ANT in your machine.

Install Apache Ant

Download the Apache Ant from the link : Download Apache Ant

  • Unzip the files into your machine.
  • Set your system path variable to ANT’s bin directory. For example d:/projects/ant/bin”
  • Set the ANT_HOME in your system variables. ANT_HOME should point to your Ant installation directory. For example “d:/projects/ant”.
  • Set JAVA_HOME in your system environment variables.
  • Copy tools.jar file into the “JRE/lib” folder.

To test the setup open your command prompt and type as “ant”. You will see a message saying

Buildfile: build.xml does not exist!
Build failed

Set up is done. Let’s look into our first simple example program using ANT script.

This example program shows how to create the JAR file after building all the java files.

<project name="sampleProject" basedir="." default="jar">

In the above code “sampleProject” is the project name for this prticular build. We are setting base directory as the current directory by just giving .(dot). We are telling the script to start from “jar” target name. The default attribute is used for setting the starting point for the ANT script.
We call a seperate task as target. We can define as many number of targets inside a build file. If we closely look into the build file, we have many number of targets based its operations. So, our build starts with “jar” target.
Target has depends attribute to indicate, that particular task can be executed only after the certain number of dependencies. In our case, before building the jar file, we have to compile the files. So, jar target calls compile target. That has some dependencies that is executed. Once the build is successful, test.jar will be created in the same directory.

build.xml

<?xml version="1.0"?>
<project name="sampleProject" basedir="." default="jar">
    <property name="src" value="ant-source"/>
    <property name="output" value="bin"/>

    <target name="compile" depends="create">
        <javac destdir="bin">
            <src path="${src}"/>
            <classpath refid="java"/>
        </javac>
    </target>

    <target name="jar" depends="compile">
        <jar destfile="test.jar">
            <fileset dir="bin"/>
        </jar>
    </target>


    <target name="clean">
        <delete dir="${output}"/>
    </target>

    <target name="create" depends="clean">
        <mkdir dir="${output}"/>
    </target>

    <path id="java">
        <fileset dir="D:JarsHibernate">
            <include name="*.jar"/>
        </fileset>
    </path>
</project>

Comments

comments

About Krishna Srinivasan

He is Founder and Chief Editor of JavaBeat. He has more than 8+ years of experience on developing Web applications. He writes about Spring, DOJO, JSF, Hibernate and many other emerging technologies in this blog.

Comments

  1. Wonderful beat ! I wish to apprentice even as you amend your web site, how can i subscribe for a blog site? The account helped me a acceptable deal. I have been tiny bit familiar of this your broadcast provided shiny transparent idea

  2. 19041980ap says:

    Please add that the one need to restart PC to get the change to PATH variable effective.

    Thanks

  3. Sanjoy says:

    Need to know if following is pssible using ant script
    call ant build file filename.xml ProprtyFileName.property PARAM1

    Can this parameter PARAM1 value be available from filename.xml as $arg1 to validate the value passed?

Speak Your Mind

*