目前,绝大多数开发人员都把 Ant 当作 Java 编程项目的标准构建工具。遗憾的是,Ant 的项目管理工具(作为 make
的替代工具)不能满足绝大多数开发人员的需要。通过检查 Ant 构建文件,很难发现项目的相关性信息和其它元信息(如开发人员/拥有者、版本或站点主页)。
Maven 除了以程序构建能力为特色之外,还提供 Ant 所缺少的高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目,而使用 Ant 则需要十几行。事实上,由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目现在使用 Maven,而且公司项目采用 Maven 的比例在持续增长。
Maven vs Ant
那么,Maven 和 Ant 有什么不同呢?在回答这个问题以前,我要强调一点:Maven 和 Ant 针对构建问题的两个不同方面。Ant 为 Java 技术开发项目提供跨平台构建任务。Maven 本身描述项目的高级方面,它从 Ant 借用了绝大多数构建任务。因此,由于 Maven 和 Ant 代表两个差异很大的工具,所以我将只说明这两个工具的等同组件之间的区别,如表 1 所示。
表 1. Maven vs Ant
Maven | Ant | |
标准构建文件 | project.xml 和 maven.xml | build.xml |
特性处理顺序 |
|
|
构建规则 | 构建规则更为动态(类似于编程语言);它们是基于 Jelly 的可执行 XML。 | 构建规则或多或少是静态的,除非使用
|
相关开发环境下的Maven插件:http://mevenide.codehaus.org/
我们组里打包Android项目都是用Ant,但是好像很多别的公司都是用Maven,看资料好像是Maven更强大一些,不过Ant也有它的独到之处。下面是一些参考链接。
maven 学习笔记(一)eclipse+android+maven http://www.cnblogs.com/luhouxiang/archive/2011/08/28/2156560.html
maven 学习笔记(二)创建一个简单的 eclipse+android+maven 工程 http://www.cnblogs.com/luhouxiang/archive/2011/08/29/2158096.html
maven集成eclipse android项目办法总结 http://peirenlei.iteye.com/blog/1546413
Google code: http://code.google.com/p/maven-android-plugin/