Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4102415
  • 博文数量: 626
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 11080
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-23 13:08
文章分类

全部博文(626)

文章存档

2015年(72)

2014年(48)

2013年(506)

分类: Java

2013-10-16 10:03:07

尽管最近Apache Ant发布了最新的1.9.2版,下载地址见:

但是,Apache Ant毕竟是几年前的产物,它的有些方法、思想和理念已经落后于当前主流的Maven等工具。
那么,当前最好的、最适合替代Ant的构建工具到底是哪一个呢?
有3种选择:Maven、Gradle和Buildr。


有一点需求很重要,那就是希望新构建工具能够兼容Ant的构建脚本和自定义任务,以便让很多项目能够平滑升级。因为Apache Ant毕竟是早期事实上的构建项目的标准,因此早期很多开源项目都是基于Ant构建的。

上面三个构建工具,其中Gradle能够和Ant实现最佳的集成。它允许现有的Ant自定义任务不加任何修改,还允许导入Ant构建脚本到Gradle的构建脚本中。Gradle的任务甚至可以依赖Ant的target,反之亦然。这使得访问Ant属性变得非常容易。

对于任意Ant项目,要迁移到Gradle项目难度并不大,而且还有如下的好处:
1. 可以利用强大的Groovy脚本
2. 易于集成Groovy和Java
3. 内建的依赖管理功能
4. 支持插件系统

Apache Buildr,也是一个面向Java项目的构建工具,它提供了对包括Scala、Groovy和其它可运行于JVM的语言的支持。Apache Buildr的设计理念就是简单和直观。
Buildr有一个缺点,就是要安装和使用它,必须先安装Ruby。而Buildr仅支持Ruby 1.8.6版,对于Ruby 1.9.x的支持目前还出于开发过程中,更不用说最新的Ruby 2.0了。也就是说,Buildr在Ruby语言的支持方面远远滞后于Ruby语言本身的发展。

其它两种工具,像Buildr,它可与Ant相集成,而且它并不像Gradle那么复杂。Maven并不像Ant或Gradle这样的脚本工具那么简单,它是声明式的,而不是过程式的。因此,当迁移复杂的Ant构建脚本到Maven将是一件相当麻烦的事,而且常常会涉及到需开发自定义Maven插件。
阅读(2613) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~