Apache Ant 中文手册
引言
Apache Ant 是一个基于 Java 的编译工具。它从功能上类似于 make,但它以
克服了 make 的缺点。
为什么在 make, gnumake, nmake, ja m 这些编译工具后,还要产生一个
Ant 呢?因为这些编译工具都有一定的限制。Ant 的最初开发者在开发跨平台
的应用时,发现以前的那些开发工具都有一定的限制。例如 make 工具,它是
基于 Shell 的,它判断一系列的条件,并像在 shell 下面那样执行编译命令,这
样做的好处的:针对特定的平台(如 unix),可以容易的利用这些工具做编译;
但同时,这也意味着,你的编译限制在固定的操作系统下,如只能用于 unix。
同时,Make 文件也有一些先天的缺陷。好多人都会遇到恐怖的 tab 问题。
Ant 的最初开发者多次说“我的命令不能执行因为我在 tab 前面加了一个空
格!”。一些工具如 Jam 一定程序上解决了这个问题,但仍有其它的格式问题。
Ant 与从基于命令的那些扩展开来的那些工具不同,Ant 是由 java 类扩展的。
不用编写 shell 命令,而是配置基于 XML 的文件,形成多个任务的目标配置树。
每一个任务都是通过一个实现了一个规定接口的 java 类来运行的。
ant 缺少了一些直接执行 shell 命令的能力,如 nd . -name foo -exec rm
{},但它给用户提供了跨平台的能力,可以在任何地方工作。实际上,Ant 也
提供了命令 execute 用来执行 shell 命令,这就是它的<exec>任务,它允许执
行基于操作系统的命令。
安装 Ant
下载 Ant。Ant 有两个版本,二进制版本和原代码版本。
要编译和使用 Ant,你必须要有一个兼容 JAXP 的 XML 解析器。
二进制版本中自己带有了最新的 Apache Xerces2 XML 解析器。如果你
想用不同的兼容 JAXP 的解析器,你可以移去 Ant 库目录下的 xercesImpl.jar
和 xml-apis.jar 两个文件。你可以要用的解析器放到 Ant 的库目录下,也可以
把 jars 文件放到系统的类路径中。
在 Ant 的当前版本中,还需要安装 JDK。下面的二进制片版本的安装后的目录
结构。
ant 安装目录
ant/bin 包含了运行脚本
ant/lib ant 运行所需的类库
ant/docs 文档
ant/etc 一些配置,如何通过任务的 xml 输出建立详细的报告,
移动编译后的文件,忽略错误警告
在运行前还要做一些设置:
1) 在 path 路径中加入 ant/bin 目录;