1.设置classpath
<classpath id="master-classpath"> <fileset dir="${lib.dir}/> <fileset dir="${tomcat_home}\lib"> <include name="servlet*.jar"/> </fileset> </classpath>
2.使用classpath
<javac srcdir="${src.dir}" destdir="${classes.dir}" debug="on"
deprecation="false" failonerror="true"
classpathref="master-classpath"> </javac>
3.输出信息
3.1可以使用<echo message="hello,msg"></echo>
3.2也可以使用<echo>hello,msg<</echo>
4.输出一段xml到指定文件
<target name="echoxml"> <echoxml file="${src.dir}/test.xml"> <project default="usage"> <target name="usage"> <echo>===============Ant Build App===========</echo> <echo>===============[usage]:帮助信息===========</echo> <echo>===============[comiple]:编译源文件===========</echo> </target> </project> </echoxml> </target>
执行任务echoxml后,会在src/生成test.xml,文件内容如下:
<?xml version="1.0" encoding="UTF-8"?> <project default="usage"> <target name="usage"> <echo>===============Ant Build App===========</echo> <echo>===============[usage]:帮助信息===========</echo> <echo>===============[comiple]:编译源文件===========</echo> </target> </project>
如果不指定echoxml标签的file属性,则将内容输出到控制台。
5.引入一个xml文件
<import file="../configs/build1.xml"/>
6.拷贝操作
6.1拷贝一个文件
<copy file="file.txt" tofile="copyfile.txt"/>
6.2拷贝一个文件到指定目录
<copy file="a.txt" todir="../files"/>
或者
<copyfile dest="../dest/src/com.ant.test.Test.java" src="src/com.ant.test.Test.java"/>
6.3拷贝一个目录到另外一目录
<copydir dest="../dest/" src="java/src"></copydir>
或者
<copy todir="../dest/"> <fileset dir="java/src"></fileset> </copy>
6.4拷贝一些文件到一个目录
<copy todir="../dest/"> <fileset dir="java/src"> <include name="**/*.java"/><!--只拷贝java文件-->
<exculde name="Test.java"/><!--排除Test.java--> </fileset> </copy>
7.删除操作
7.1删除一个文件
<delete file="d:/test/test.xml"></delete>
7.2删除一个目录
<delete dir="dest/classes"></delete>
7.3删除符合特定规则的文件
<delete> <fileset dir="src"> <include name="**/*.bak"/> </fileset> </delete>
7.4删除当前目录下所有文件和目录,包括空目录和当前目录
<delete dir="dest/classes" includeemptydirs="true"></delete>
7.5删除当前目录下所有文件和目录,不包括当前目录
<delete includeemptydirs="true"> <fileset dir="dest/classes" includes="**/*"/> </delete>
7.6删除当前目录下所有svn相关的文件
<delete defaultexcludes="false"> <fileset dir="src" includes="**/*.svn"></fileset> </delete>
7.7删除文件目录树
<deltree dir="dest"/>
8剪切文件
<move todir="dest"> <fileset dir="src" includes="**/*.java" excludes="**/*.properties"></fileset> </move>
9.重命名
<rename dest="b.txt" src="a.txt"/>
10.建立临时文件
<tempfile description="建立临时文件" destdir="${dest.dir}" property="temp" suffix=".xml"/>
11.Touch的使用
11.1如果文件不存在,则创建文件;否则,修改最后访问时间为当前系统时间。
<touch file="${dest.dir}/a.txt"></touch>
11.2如果文件不存在,则创建文件;否则修改最后访问时间为22/06/2014 4:25 pm。
<touch file="${dest.dir}/a.txt" datetime="22/06/2013 4:25 pm"></touch>
11.3批量更改文件最后的访问时间
<touch datetime="22/06/2012 4:26 pm"> <fileset dir="${dest.dir}"></fileset> </touch>
12.Condition的使用