Gradle&Maven&Ant 构建工具

什么是Gradle?

Gradle就是一个构建工具,一个自动化的构建工具,一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。

它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。
面向Java应用为主。当前其支持的语言限于Java、Groovy、Kotlin和Scala,计划未来将支持更多的语言。

关于构建工具?

我们要写一个Java程序,一般的步骤也就是编译,测试,打包。这个构建的过程,如果文件比较少,我们可以手动使用java, javac, jar命令去做这些事情。但当工程越来越大,文件越来越多,这个事情就不是那么地令人开心了。因为这些命令往往都是很机械的操作。但是我们可以把机械的东西交给机器去做。这便有了后来的构建工具…

关于Ant?

Ant (Another Neat Tool), 是一个基于Java的跨平台构建工具。
Ant定义了五个任务,init, compile, build, test, clean。每个任务做什么都定义清楚了。后面一个任务皆依赖前一个任务,执行任务前会先执行最初被依赖的对象。(比如:执行 ant test,它的执行顺序是:init - compile - build - test)
缺点:无法管理依赖。
然而,我们一个项目会涉及到很多的工具,不同的工具和不同的版本;另外,每次打包都要自己手动去把正确的版本拷到lib下面,所以使用Ant 不仅很枯燥繁琐,还很容易引起Jar包版本冲突问题。
所以,有了后来的Maven…

关于Maven?

Maven的原理便是提供了仓库,我们可以将所有依赖的包放在库中,在工程管理 pom.xml 文件中根据 “三坐标”(groupId, artifactId, version)标明我们需要的包。在构建的时候,Maven会自动把我们标明需要的包打包进当前项目中来。
Maven 构建工具的关键是配置setting.xml中的仓库地址(包括:本地仓库,或者镜像仓库,或者中央仓库);以及,工程管理 pom.xml 文件中的 依赖标明。
Maven里抛弃了ant中通过target定义任务的做法,而是引入了生命周期的概念
缺点:(1)任务扩展困难,无法灵活地定义自己的任务。(2)Maven是使用xml进行配置的,语法不简洁
所以,有了后来的最终Boss ---- Gradle构建工具,中和了Ant和Maven的优点和改善了两者的缺点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值