ant:一种编译打包工具.
(1)Ant是一种基于Java的build工具。理论上来说,它有些类似于(Unix)C中的make ,但没有make的缺陷。
(2)既然我们已经有了make, gnumake, nmake, jam以及其他的build工具为什么还要要一种新的build工具呢?因为Ant的原作者在多种(硬件)平台上开发软件时,无法忍受这些工具的限制和不便。类似于make的工具本质上是基于shell(语言)的:他们计算依赖关系,然后执行命令(这些命令与你在命令行敲的命令没太大区别)。这就意味着你可以很容易地通过使用OS特有的或编写新的(命令)程序扩展该工具;然而,这也意味着你将自己限制在了特定的OS,或特定的OS类型上,如Unix.
(3)Ant就不同了。与基于shell命令的扩展模式不同,Ant用Java的类来扩展。(用户)不必编写shell命令,配置文件是基于XML的,通过调用 target树,就可执行各种task。每个task由实现了一个实现了特定Task接口的对象来运行。
(4)当一个代码项目大了以后,每次重新编译,打包,测试等都会变得非常复杂而且重复,因此c语言中有make脚本来帮助这些工作的批量完成。在Java 中应用是平台无关性的,当然不会用平台相关的make脚本来完成这些批处理任务了,ANT本身就是这样一个流程脚本引擎,用于自动化调用程序完成项目的编译,打包,测试等。除了基于JAVA是平台无关的外,脚本的格式是基于XML的,比make脚本来说还要好维护一些。
(5)例子:
每个ant脚本(缺省叫build.xml)中设置了一系列任务(target):比如对于一个一般的项目可能需要有以下任务。
* 任务1:usage 打印本脚本的帮助信息(缺省)
* 任务2:clean <-- init 清空初始化环境
* 任务3:javadoc <-- build <-- init 生成JAVADOC
* 任务4:jar <-- build <-- init 生成JAR
* 任务5:all <-- jar + javadoc <-- build <-- init 完成以上所有任务:jar javadoc
而多个任务之间往往又包含了一定了依赖关系:比如把整个应用打包任务(jar)的这个依赖于编译任务(build),而编译任务又依赖于整个环境初始化任务(init)等。
注:我看到很多项目的ant脚本中的命名基本上都是一致的,比如:编译一般叫build或者 compile;打包一般叫jar或war;生成文档一般命名为 javadoc或javadocs;执行全部任务all。在每个任务的中,ANT会根据配置调用一些外部应用并配以相应参数执行。虽然ANT可调用的外部应用种类非常丰富,但其实最常用的就2,3个:比如javac javadoc jar等。
(6)Ant的优点:
跨平台性。Ant是纯Java语言编写的,所示具有很好的跨平台性。
操作简单。Ant是由一个内置任务和可选任务组成的。Ant运行时需要一个XML文件(构建文件)。
分享到:
相关推荐
关于ant的资料关于ant的资料关于ant的资料关于ant的资料
关于Ant的全面了解
一个简单易懂的关于ant的教程 适合初学者入门
Ant的安装配置和一般应用,可以满足一般的使用。
在学习struts+spring+hibernate,尤其是Appfuse的过程中大量涉及到ant的使用,因此我觉得有必要对ant做个比较深入的学习,以下是在学习过程中搜集的材料。比较详细,很适合没有接触过ant的初学者
Ant技术的介绍,有关应用部署的全面介绍,对于在Eclipse中使用Ant完成应用的部署
ant的api文档,maven的文档,还有一些ant配置文件
ant简介及配置环境情况,有具体运行例子
该资源是我在复制文件到远程目录时写的,自己在学习的时候可以参考参考
NULL 博文链接:https://xiaoming123123.iteye.com/blog/1856154
如果您正在编写 Java 代码却还没有使用 Ant,那么本教程就是为您准备的。不管您当前是否在使 用某种不同的生成工具,或者根本就没有使用生成工具,了解关于Ant 的更多知识或许会促使您转 而使用它。
不管您当前是否在使用某种不同的生成工具,或者根本就没有使用生成工具,了解关于Ant 的更多知识或许会促使您转而使用它。 如果已经在使用 Ant,那么您仍然可能在本教程中发现一些有趣的东西。或许您会发现一些预料...
由于其灵活性和易用性,Ant 很快在 Java 开发人员中流行开来,因此您有必要了解关于它的更多信息。 在继续学习本教程之前,你不需要具备先前的 Ant 经验或知识。我们将首先查看 Ant 生成文件 (build ...
关于Ant学习的一点点小结,整理成档了,文档中已经包含了几个简单的build.xml实例,也有注释,简单明了、通俗易懂
一个关于ant4eclipse的插件的东东
我自己整理的关于ANT简单标签的解释,自认为很全面
关于ant的简明教程,只有十页,很易上手;从哪来,回哪去!
关于Ant全攻略 操作系统 build 学习非常好的资料
这是关于ant1.7.1的英文参考手册,包括第三方的jar文件。
开发人员中流行开来,因此您有必要了解关于它的更多信息。 在继续学习本教程之前,你不需要具备先前的Ant 经验或知识。我们将首先查看Ant 生成文件 (build file)的基本结构,并学习如何调用这个工具。我们将逐步...