Ant常见任务

来源:互联网 发布:linux查看检测网络命令 编辑:程序博客网 时间:2024/04/27 02:22

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的使用