Ant的主要任务的语法

      Eclipse默认提供了对Ant的支持,在window-Preferences->ant下对Ant进行配置,Eclipse下可以对build.xml文件进行编译处理,支持错误检查、格式化。Ant脚本是有Ant任务按照一定结构组成的,主要的Ant任务有:

任务大类

任务

使用方法

说明

归档任务

GZip

BZip2

<gzip src=”test.tar” destfile=”test.tar.gz”/>

文件打包

 

 

<bzip2 src=”test.tar” destfile=”test.tar.gz”/>

文件打包

 

 

<gzip src=”test.tar” destfile=”test.tar.gz”>

<url url=”http://a/b.tar”/>

</gzip>

 

将在线文件打包

 

GUnizip

BUnzip2

<gunzip src=”test.tar.gz” dest=”test.tar”/>

解压

 

Zip

<zip destfile=”a.zip” basedir=”htdocs/html”/>

Htdocs/html文件全部压缩到a.zip

 

 

<zip destfile=”a.zip”>

<fileset dir=”htdocs/manual”/>

<fileset dir=”.”/>

</zip>

使用fileset对象

 

Jar

 

打包为Jar文件

 

Tar

 

打包为tar文件

 

War

注意war需要指定各种路径,例如类、配置信息等

打包为war文件

 

Unjar

Untar

Unwar

unzip

<unzip src=”${src}/a.zip” dest=”${src}”/>

解包上述文件

编译任务

Javac

<javac destdir="${run.classpath}" srcdir="${run.srcpath}"

classpathref="compile.path" />

 

执行任务

Java

<java classname=”test.main”>

<arg value=”-h”/>

</java>

执行ajva

 

Ant

<ant antfile=”a.xml” target=”compile”/>

编译

 

antCall

<target name=”default”>

<antcall target=”b”>

<param name=”p1” value=”v1”/>

</antcall>

</target>

<target name=”b”>

<echo message=”${p1}”/>

</target>

调用统一脚本文件的其它target

 

Exec

<exec executable=”dir”/>

 

调用一个系统命令

 

Sleep

<sleep hours=”1” minutes=”-59” milliseconds=”10”/>

脚本暂停十毫秒

文件任务

Fileset

<fileset dir=”src” casesensitive=”yes”>

<include name=”**/*.java”/>

<exclude name=”**/Test*”/>

</fileset>

Src下所有java文件,除了Test开头的。

 

Copy

<copy file=”a.txt” tofile=”b.txt”/>

<copy file=”a.txt” todir=”a/b/c”/>

拷贝文件

 

Delete

<delete><fileset/></delete>

删除

 

Move

<move file=”file.a” tofile=”file.b”/>

<move file=”file.a” todir=”a/b/c”/>

移动

 

Mkdir

<mkdir dir=”test”/>

创建目录

 

Get

<get src=http://a/b.txt dest=”help/b.txt”/>

获取文件

属性任务

Property

<property name=”foo.dist” value=”dist”/>

指定属性值

 

 

<property resource=”foo.properties”>

获取属性文件中的值

 

Available

<available name=”a.jar” property=”a.present”/>

某资源是否存在

 

Condition

 

条件为真设置一个属性的值

其他任务

Echo

<echo>hello</echo>

<echo message=”hello”/>

输出消息

 

Fail

<fail message=”www”/>

<fail>aaa</fail>

失败信息

 

Input

<input/>

<input message=”a” validargs=”y,n” addproperty=”do.delete”/>

输入框

 

Sound

<sound><success source=”a.wav”/><fail source=”ohno.wav” loops=”2”/></sound>

脚本情况播放音乐

 

Import

<import file=”aa.xml”/>

导入外部脚本

      以一个例子来说明以上语法:

<project name="anttest" default="unzip">
	<property name="src" value="src"/>
	<property name="class" value="class"/>
	<property name="pn" value="anttest"/>
	<echo>${pn} ant starting</echo>


	<target name="mk" depends="delete">
		<mkdir dir="${src}"/>
		<mkdir dir="${class}"/>
	</target>


	<target name="delete">
		<delete dir="${src}"/>
		<delete dir="${class}"/>
		<delete file="${pn}.jar"/>
		<delete file="${pn}.rar"/>
	</target>
	
	<target name="move" depends="mk">
		<copy file="hello.java" todir="${src}"/>
	</target>


	<target name="compile" depends="move">
		<javac srcdir="${src}" destdir="${class}" classpath="${lib}"/> 
	</target>
	
	<target name="run" depends="compile">
		<java classname="hello">
			<classpath path="${class}"/>
		</java>
	</target>


	<target name="jar" depends="run">
		<jar basedir="${class}" destfile="${pn}.jar"/>
		<zip basedir="." destfile="${pn}.rar"/>
	</target>


	<target name="unzip" depends="jar">
		<unzip src="${pn}.rar" dest="../gong"/>
	</target>

</project>

你可能感兴趣的:(Ant的主要任务的语法)