ant_任务的含义与使用
任务是一段可执行的代码。任务可以具有多个属性,每个任务都具有共同的结构。任务常见结构由名称,属性等组成。
任务配置结构示例:
<task-name attribute1 = "value1" attribute2 = "value2" ...>
... </task-name>
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内置任务连接示例
——连接单个文件,如果目标文件存在则附加,示例如下:
<concat destfile = "NOTES" append="true">
<filelist dir = "notes" files = "note.txt">
</concat>
如何使用Apache Ant任务?
要使用任务,首先需要使用<project>标签创建项目。之后,创建一个目标,使用<target>标记对任务进行分组。然后将任务放在目标标记内来执行,示例,使用<java>标签创建java任务:
<project name = "java-ant project" default = "run">
<target name = "run" depends="compile">
<java classname = "com.test.Hello">
<classpath path = "testclass">
</classpath>
</java>
</target>
</project>
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
ant_任务的含义与使用的更多相关文章
- ant_<target>标签含义与使用
<target>标记目标 目标是一个或多个任务的集合,任务是一段可执行的代码:构建文件中包含一个项目,在项目内部声明了所有目标: <target name = "run&q ...
- 由css reset想到的深入理解margin及em的含义
由css reset想到的深入理解margin及em的含义 原文地址:http://www.ymblog.net/content_189.html 经常看到这样语句,*{ margin:0px;pad ...
- Stack的三种含义
作者: 阮一峰 日期: 2013年11月29日 学习编程的时候,经常会看到stack这个词,它的中文名字叫做"栈". 理解这个概念,对于理解程序的运行至关重要.容易混淆的是,这个词 ...
- wireshark抓包工具简介以及tcp三次握手的一些含义
wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示网络封包的详细信息.使用wireshark的人必须了解网络协议,否则就看不懂wireshark了.为了安全考虑, ...
- PV、EV、AC、BAC、EAC、ETC等计算公式含义
PV.EV.AC.BAC.EAC.ETC等计算公式含义 PV Planned Value:计划值 应该完成多少工作, (按照计划截止目前应该花费的预算) AC Actual Cost:实际成本, 完成 ...
- [MySQL]show index from tb_name命令各列的含义
show index from table_name 这个命令有助于诊断性能低下的查询,尤其是查询是否使用了可用的索引. 下面介绍下 这个命令显示的结果列的含义: | Table | Non_uniq ...
- CPU状态信息us,sy,ni,id,wa,hi,si,st含义
转自:http://blog.csdn.net/sasoritattoo/article/details/9318893 转自:http://fishermen.iteye.com/blog/1995 ...
- http错误代码含义中英文对照
Http错误代码含义中文 概要当用户试图通过 HTTP 或文件传输协议 (FTP) 访问一台正在运行 Internet 信息服务 (IIS) 的服务器上的内容时,IIS 返回一个表示该请求的状态的数字 ...
- linux中shell变量$#,$@,$0,$1,$2的含义解释
linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行 ...
随机推荐
- gitlab-ci + k8s 之gitlab-ci(一)
目前常用的持续集成工具主要是jenkins与gitlab-ci ,我已在另一博文中详细记录了jenkins部署过程(其中包括gitlab的搭建),此篇介绍gitlab-ci的使用. 背景介绍 GitL ...
- windows系统-phpstudy升级mysql8.0.12安装教程及修改密码和安装注意事项
1.下载安装包,下载地址:mysql8.0.12 .如果你想要下载其它版本可以选择:mysql历史版本地址. 2.下载好,删除phpstudy的mysql目录.如果数据重要的,注意备份数据!同意把m ...
- git pull总是要输入账号和密码
如果你用git从远程pull拉取代码,每次都要输入密码,那么执行下面命令即可 git config --global credential.helper store 这个命令则是在你的本地生成一个账号 ...
- 转载关于Python Web后端开发面试心得
先介绍下我的情况:通信背景,工作一年多不到两年.之前一直在做C++的MFC软件界面开发工作.公司为某不景气的国企研究所.(喏,我的工作经验很水:1是方向不对:2是行业有偏差).然后目前是在寻找Pyth ...
- PAT甲级1141 Ranking of Institutions
题目:https://pintia.cn/problem-sets/994805342720868352/problems/994805344222429184 题意: 给定几个学生的PAT分数和学校 ...
- day21:包和异常处理
1,复习 # 序列化模块 # json # dumps # loads # dump 和文件有关 # load load不能load多次 # pickle # 方法和json的一样 # dump和lo ...
- Date Calendar
1 毫秒值概念 时间和日期的计算,必须依赖毫秒值获取当前日期的毫秒值:System.currentTimeMillis() 返回值long类型参数, 时间原点:公元1970年1月1日,午夜0:00:0 ...
- java框架之MyBatis(2)-进阶&整合Spring&逆向工程
进阶内容 准备 jdbc.url=jdbc:mysql://192.168.208.192:3306/test?characterEncoding=utf-8 jdbc.driver=com.mysq ...
- [sql]sql的select字符串切割
可以经常看看 mysql的refman,写的很棒 sql基础操作 查看表结构 show create table desc table show full columns from test1; li ...
- 笔记-ASP.NET WebApi
本文是针对ASP.NET WepApi 2 的笔记. Web API 可返回的结果: 1.void 2.HttpResponseMessage 3.IHttpActionResult 4.其他类型 返 ...