Ant和Maven共享在Java市场上至关大的成功。ANT是在2000年发布了第一个版本的工具,它是基于程序编程思想的发展。 后来,人们在 Apache-Ivy的帮助下,网络接受插件和依赖管理的能力有所提高。但主要缺点是使用XML做为一种格式来写构建脚本。XML是分层的,不利于程序的编程,并且当XML文件变大之后变得难以管理。编程
Maven在2004年推出的,它比ANT有一个很大的改进。它改变告终构而且继续使用XML编写生成规范。Maven的依赖约定和可以经过网络下载依赖关系。Maven的主要好处是它的生命周期。虽然接连的多个项目生命周期相同,这是以灵活性为代价的。 Maven也面临着依赖管理的一些问题。它不会在同一库版本之间处理好矛盾,复杂的定制构建脚本实际上Maven比ANT更难写。网络
最后,Gradle于2012年发布,带来了一些更高效的特色。框架
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各类繁琐配置。 面向Java应用为主。当前其支持的语言限于Java、Groovy和Scala,计划将来将支持更多的语言。yii
下面是一些Gradle的功能 按约定声明构建和建设; 强大的支持多工程的构建; 强大的依赖管理(基于Apache Ivy),提供最大的便利去构建工程; 全力支持已有的 Maven 或者Ivy仓库基础建设; 支持传递性依赖管理,在不须要远程仓库和pom.xml和ivy配置文件的前提下; 基于groovy脚本构建,其build脚本使用groovy语言编写; 具备普遍的领域模型支持构建; 深度 API; 易迁移; 自由和开放源码,Gradle是一个开源项目,基于 ASL 许可。 为何使用Groovy? 完整的Gradle API是使用Groovy语言设计的。这是基于XML内部 DSL 的优势。Gradle是其核心的通用构建工具; 它的主要焦点是Java项目。在这些项目中,团队成员要熟悉Java,这是为了更好的构建透明,给全部团队成员的项目。工具
相似于 Python,Groovy或Ruby语言是最好的构建框架。为何Groovy被选中?这是由于它为使用Java的人提供了迄今为止最大的透明度。Groovy的基本语法与Java是同样的。gradle