一、定义目标任务。
Ant是由若干目标任务组成的,由这些任务组合完成一系统的操作。所有的任务必须在<project>标签下,project表示一个项目,而且必须指定一个默认的目标任务,执行默认的操作,用default属性指定:
<project default="init">
<target name="init">
<!-- 一些操作 -->
</target>
<target name="otherTargets">
<!-- 一些操作 -->
</target>
</project>
二、定义属性。
其实就是等于预定义环境变量,而且这些变量一旦定义就不能改变。定义这些属性的意义在于统一操作和重用这些属性。而这种功能主要用于定义目录位置:
<property name="src.dir" value="src" />
<property name="dest.dir" value="bin" />
<property name="config.dir" value="config" />
文件系统路径的定义:
<property name="test.dir" location="the/test/directory" />
使用这些变量的方法是:
<javac srcdir="${src.dir}" destdir="${dest.dir}" />
三、编译操作。
使用javac标签,srcdir属性指定源码目录,destdir属性指定目标文件目录,debug指定生成目标代码是否带有调试信息,fork表示是否新开一个jvm来编译,classpath指定CLASSPATH。
<javac srcdir="${src.dir}" destdir="${dest.dir}" />
四、打包jar。
使用jar标签,destfile属性指定目标文件路径,basedir指定要打包的那个目录的路径。
<jar destfile="parkage.jar" basedir="dest.dir" />
五、设置时间。
在有需要使用到时间时就要用到这一步。设置时间必须是在第一个会被运行的target(init)中定义,使用的标签是:tstamp,不需要任何标签属性设置,它会预设置三个属性变量:TSTAMP,DSTAMP,TODAY,表示格式是:HHMM,YYYYMMDD,日期的英文表示:
<target name="init">
<tstamp />
</target>
<target name="other action">
<jar destfile="${DSTAMP}${TSTAMP}${TODAY}.jar" basedir="${dest.dir}" />
</target>
可以自定义时间格式,方法是在定义<tstamp>中加入<format>,<format>的property属性指定属性变量名,可以为以后调用,而pattern属性指定格式,其方式是SimpleDateFormat类的工作方式一样:
<target name="init">
<tstamp>
<format property="NORMAL" pattern="yyyy-mm-dd(HH_mm_ss)"/>
</tstamp>
</target>
<target name="other actions">
<jar destfile="${NORMAL}.jar" basedir="${dest.dir}" />
</target>