任务是一段可执行的代码。任务可以具有多个属性,每个任务都具有共同的结构。任务常见结构由名称,属性等组成。
任务配置结构示例:
...
Apache-Ant中的任务分为两类:①内置任务,②用户定义的任务;
Apache Ant预定义(内置)任务
——Apache Ant本身在其库中提供的任务称为内置任务。Apache ant 提供了大量内置任务,可用于执行区分任务。如下所示:
~存档任务
~审计任务
~编译任务
~执行任务
~文件任务
~记录任务
~邮件任务
......
存档任务:用于压缩和解压缩数据的任务称为存档任务,常见的内置存档任务如下:
任务名称
描述
Ear
Jar任务的扩展,对文件进行特殊处理
Jar
一组文件
Tar
创建tar存档
unjar
解压缩jar文件
untar
解压缩tar文件
unwar
解压缩war文件
unzip
解压缩zip文件
war
jar任务的扩展
审计任务
任务名称
描述
jdepend
它用于调用jdepend解析器
编译任务
用于编译源文件的任务称为编译任务,常见的内置编译任务如下:
任务名称
描述
depend
确定哪些类文件的资源已过期
javac
编译源文件
jspc
运行jsp编译器
netrexxc
编译netrexx源文件
rmic
运行rmic编译器
执行任务:用于执行运行应用程序的任务称为执行任务,常见的内置执行任务如下:
任务名称
描述
ant
在指定的构建文件上运行ant
antcall
在同一个构建文件中运行另一个目标
apply
执行系统命令
java
执行java类
parallel
可包含其他ant任务的容器任务
sleep
按指定时间暂停执行
文件任务:与句柄文件操作相关的任务称为文件任务,常见的内置文件任务:
任务名称
描述
chmod
更改文件的权限
chown
更改文件的所有权
concat
连接多个文件
copy
将文件复制到新目的地
delete
删除文件
mkdir
创建一个目录
Apache Ant内置任务连接示例
——连接单个文件,如果目标文件存在则附加,示例如下:
如何使用Apache Ant任务?
要使用任务,首先需要使用标签创建项目。之后,创建一个目标,使用标记对任务进行分组。然后将任务放在目标标记内来执行,示例,使用标签创建java任务:
Apache Ant用户定义任务
Apache ant允许用户编写自己的任务,参考以下步骤:
1.首先创建一个Java类并扩展 org.apache.tools.ant.Task类;
2.为每个属性创建setter和getter方法
3.如果任务中包含其他任务作为嵌套元素,则class必须实现org.apache.tools.ant.TaskContainer接口
4.如果任务支持字符数据,请编写public void addText(String)方法
5.对于每个嵌套元素,write, add或addConfigured方法
6.编写一个public void execute()方法(不带参数)并抛出BuildException