一、安装
1、配置环境变量path
二、执行ant
1、执行ant,会在当前所在目录查找build.xml文件
ant
2、指定使用的构建文件
ant -f helloword.xml
或ant -buildfile helloword.xml
3、指定执行的目标(target),如果不指定,则执行project元素中default属性所指定的target
ant init(target的名称)
三、配置文件解析
1、每个构建文件包含单个根project元素,name属性指定名称,basedir属性指定根目录,一般填当前目录(即英文句号.),project元素一定包含default属性
2、description元素是描述信息,相当于注释
3、一个project元素包含多个target元素,
4、一个target元素包含多组操作,name属性指定target名称,depends指定依赖的目标,依赖多个目标用英文逗号分隔,description属性是注释信息
5、property属性的值一旦定义,不允许更改,用${}引用,location属性可让斜杆/或反斜杆\与平台无关,用于生成多层目录
6、mkdir元素是创建文件夹,dir属性指定生成的文件夹及其文件,file属性指定生成的文件
7、delete元素是删除文件夹,dir属性指定删除的文件夹及其文件,file属性指定删除的文件
8、指定< tstamp></ tstamp>元素后就可使用DSTAMP等生成时间戳的变量
9、< manifest></ manifest>表示往jar文件的清单文件写入内容,Main-Class是jar包运行的入口
10、每个元素必须完结
示例1:
<?xml version="1.0" encoding="utf-8"?>
<project name="myAntProject" basedir="." default="package">
<description>
this is a comment
</description>
<!-- 指定后可使用DSTAMP等变量 -->
<tstamp></tstamp>
<property name="compile" value="compile"></property>
<property name="dist" value="dist"></property>
<target name="init"></target>
<target name="preprocess" depends="init">
<mkdir dir="${compile}"/>
<mkdir dir="${dist}"/>
</target>
<target name="compile" depends="init,preprocess"></target>
<target name="package" depends="compile"></target>
<target name="myCompile" depends="preprocess">
<javac srcdir="src" destdir="${compile}"/>
</target>
<target name="myDist" depends="myCompile">
<jar destdir="${dist}/package-${DSTAMP}.jar" basedir="${compile}"/>
<!-- 往jar文件的清单文件写入内容 -->
<manifest>
<attribute name="Build-By" value="${user.name}"/>
<attribute name="Main-Class" value="com.cn.test"/>
</manifest>
</target>
</project>
示例2:
<?xml version="1.0" encoding="utf-8"?>
<project name="myAntProject" basedir="." default="package">
<description>
this is a comment
</description>
<!-- 复制操作-->
<target name="copyFile">
<copy file="" tofile=""></copy>
<copy file="" todir=""></copy>
</target>
<target name="copyFile">
<copy file="" todir="">
<fileset dir="src">
<include name="*.java"></include>
<exclude name="*.class"></include>
<fileset>
</copy>
</target>
<!--剪切文件-->
<target name="moveFile">
<move file="" tofile=""></move>
<move file="" todir=""></move>
</target>
<!--压缩文件-->
<target name="compress">
<zip destfile="xx.zip" basedir=""></move>
</target>
<!--解压缩文件-->
<target name="uncompress">
<unzip dest="" src="xx.zip"></move>
</target>
<target name="uncompress">
<replace file="" token="old" value="new" summary="on"></move>
</target>
</project>