Apache Ant

From Crashcourse Wiki

Jump to: navigation, search

Contents

[edit] Links

[edit] Bullet points

  • Java-based build tool
  • shell-based build systems inherently limited by commands for OS they're run on
  • Ant extended using Java classes

[edit] Packages

  • ant
  • ant-manual

What about test/demo packages?

  • ant-testutil

[edit] Useful variables

  • ANT_HOME

[edit] Simple commands

$ ant -version
$ ant -diagnostics
$ ant -p, -projecthelp

[edit] Simple buildfile example

Attributes:

  • name
  • default
  • basedir
<project name="MyProject" default="dist" basedir=".">
    <description>
        simple example build file
    </description>
  <!-- set global properties for this build -->
  <property name="src" location="src"/>
  <property name="build" location="build"/>
  <property name="dist"  location="dist"/>

  <target name="init">
    <!-- Create the time stamp -->
    <tstamp/>
    <!-- Create the build directory structure used by compile -->
    <mkdir dir="${build}"/>
  </target>

  <target name="compile" depends="init"
        description="compile the source " >
    <!-- Compile the java code from ${src} into ${build} -->
    <javac srcdir="${src}" destdir="${build}"/>
  </target>

  <target name="dist" depends="compile"
        description="generate the distribution" >
    <!-- Create the distribution directory -->
    <mkdir dir="${dist}/lib"/>

    <!-- Put everything in ${build} into the MyProject-${DSTAMP}.jar file -->
    <jar jarfile="${dist}/lib/MyProject-${DSTAMP}.jar" basedir="${build}"/>
  </target>

  <target name="clean"
        description="clean up" >
    <!-- Delete the ${build} and ${dist} directory trees -->
    <delete dir="${build}"/>
    <delete dir="${dist}"/>
  </target>
</project>
Personal tools