君子博学而日参省乎己 则知明而行无过矣

博客园 首页 新随笔 联系 订阅 管理

Ant是一种基于Java的build工具。理论上来说,它有些类似于(Unix)C中的make ,但没有make的缺陷。

当一个代码项目大了以后,每次重新编译,打包,测试等都会变得非常复杂而且重复,因此c语言中有make脚本来帮助这些工作的批量完成。在Java 中应用是平台无关性的,当然不会用平台相关的make脚本来完成这些批处理任务了,ANT本身就是这样一个流程脚本引擎,用于自动化调用程序完成项目的编译,打包,测试等。除了基于JAVA是平台无关的外,脚本的格式是基于XML的,比make脚本来说还要好维护一些。

每个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等。

二、ANT常用命令举例

以下只提供了几个常用命令格式,具体使用可以参照:“ant -help”。

  1. ant
    使用当前目录下的build.xml运行Ant,执行缺省的target。
  2. ant -buildfile test.xml
    使用当前目录下的test.xml运行Ant,执行缺省的target。
  3. ant -buildfile test.xml dist
    使用当前目录下的test.xml运行Ant,执行一个叫做dist的target。
  4. ant -buildfile test.xml -Dbuild=build/classes dist
    使用当前目录下的test.xml运行Ant,执行一个叫做dist的target,并设定build属性的值为build/classes。

三、ANT的使用

此部分内容比较多,留在以后再学吧……………………
http://guiheji.blog.sohu.com/107658245.html
http://www.chedong.com/tech/ant.html
http://blog.csdn.net/wyh_1983/article/details/1480609
http://ant.apache.org/manual/using
http://baike.baidu.com/view/42824.htm
http://blog.csdn.net/yes1983/article/details/1245806
http://blog.csdn.net/cm4ever/article/details/305559
http://sgsoft.cnblogs.com/articles/81480.html
http://yunnfei-wang.iteye.com/blog/285815
http://www.wangmeng.cn/Article/SOFTDEVELOP/JAVA/200705/2716.html
http://www.360doc.com/content/07/0531/15/23378_531030.shtml
http://www.360doc.com/content/12/0219/23/3446769_187936760.shtml
http://www.bianceng.cn/Programming/Java/201102/24538_2.htm
http://wanqiufeng.blog.51cto.com/409430/486947
http://jimi68.iteye.com/blog/145978
http://www.cnblogs.com/wufengxyz/archive/2011/11/24/2261797.html
http://www.360doc.com/content/07/0114/16/14716_330410.shtml
posted on 2013-06-17 02:18  刺猬的温驯  阅读(254)  评论(0)    收藏  举报