gradle官方文档_Gradle从入门到精通系列(一)—— 为什么要用Gradle?

Gradle是一款基于JVM的构建工具,利用Groovy或Kotlin DSL编写构建脚本,提供约定优于配置、强大的依赖管理和Gradle Wrapper等功能。相比Maven,Gradle更加灵活,适合自动化构建,尤其在Android开发中被广泛使用。
摘要由CSDN通过智能技术生成

点击关注上方“大前端圈”

设为“置顶或星标”,第一时间送达技术干货。

778a26370eaa3914fa6bb1b139b91c1d.png

目录
  1. Gradle是什么

  • DSL

  • Groovy

Gradle有什么特性

为什么要用Gradle

一,Gradle是什么
  • Gradle一个基于JVM的开源的新一代构建工具。

  • Gradle就是工程的管理,帮我们做了依赖、打包、部署、发布、各种渠道的差异管理等工作。

  • 构建工具可以让项目开发的工作实现自动化。自动化可以自定义有序的步骤来完成代码的编译、测试和打包等工作,让重复的步骤变得简单。

  • Gradle是以Groovy语言为基础,面向Java应用为主。基于DSL语法的自动化构建工具。

DSL概念介绍:
  • 全称:

DSL(domain specific language,即特定领域语言)

  • 有哪些常见的DSL语言:

xml
html

  • DSL与通用编程语言的区别:

求专不求全,解决特定问题

Groovy介绍

a. Groovy:

  1. 一种基于JVM的敏捷开发语言

  2. 结合了Python、Ruby和Smalltalk的许多强大的特性

  3. Groovy可以与Java完美结合,而且可以使用Java所有的库

b. Groovy特性:

  1. 语法上支持动态类型、闭包等新一代语言特性

  2. 无缝集成所有已经存在的Java类库

  3. 既支持面向对象编程也支持面向过程编程

c. Groovy优势:

  1. 一种更加敏捷的编程语言

  2. 入门非常的容易,且功能非常的强大

  3. 既可以作为编程语言也可以作为脚本语言

groovy是一种基于java虚拟机的动态语言。基于动态语言的DSL语言与Ant或者任何基于XML的构建系统相比有显著优势。

二,Gradle有什么特性
1,约定优于配置,即为设置和属性提供默认值。

Gradle可以为构建你的项目提供引导和默认值,如果你使用这种约定,你的Gradle构建脚本不会有几行。比起Ant,Gradle不仅仅提供了约定,还可以让你轻松的打破约定。

2,Gradle Wrapper

Gradle Wrapper是对Gradle 的包装,它的作用是简化Gradle本身的下载、安装和构建,比如它会在我们没有安装Gradle的情况下,去下载指定版本的Gradle并进行构建。Gradle的版本很多,所以有可能出现版本兼容的问题,这时就需要Gradle Wrapper去统一Gradle的版本,避免开发团队因为Gradle版本不一致而产生问题。

3,强大的依赖管理

Gradle提供了可配置的可靠的依赖管理方案。一旦依赖的库被下载并存储到本地缓存中,我们的项目就可以使用了。依赖管理很好的实现了在不同的平台和机器上产生相同的构建结果。

4,构建脚本使用Groovy或Kotlin DSL编写

Ant和Maven的构建脚本是由XML来编写的,如果XML逻辑复杂内容太多就不容易维护。Gradle可以使用Groovy DSL来实现构建脚本,Groovy 是基于Jvm一种动态语言,它的语法和Java非常相似并兼容Java,因此你无需担心学习Groovy的成本。Groovy在Java的基础上增加了很多动态类型和灵活的特性,比起XML,Gradle更具有表达性和可读性。Groovy编写构建脚本代码量更少,可读性更强。

5,可以和其他构建工具集成

Gradle可以和Ant、Maven和Ivy进行集成,比如我们可以把Ant的构建脚本导入到Gradle的构建中。

三,为什么要用Gradle

从上图可以看出,Gradle结合Ant和Maven等构建工具的最佳特性。它有着约定优于配置的方法、强大的依赖管理,它的构建脚本使用Groovy或Kotlin DSL编写,是Android的官方构建工具。

同为构建工具与maven比较,maven缺点是什么:

  1. Maven的提供了默认的结构和生命周期,这些可能不适合你的项目需求。

  2. 为Maven写定制的扩展过于累赘。

  3. Maven的中央仓库比较混乱,当无法从中央仓库中得到需要的类库时,我们可以手工下载复制到本地仓库中,也可以建立组织内部的仓库服务器。

  4. 国内连接Maven的中央仓库比较慢,需要连接国内的Maven镜像仓库。

  5. Maven缺乏文档,不便于使用和理解

四,总结一下:

本文介绍了Gradle是什么,Gradle的特性,这些特性和其他竞争的构建工具相比有着很大的优势和吸引力,这也是为什么我们现在要用Gradle的原因。

下篇预告:gradle安装,基本语法,常用命令

感谢

1,《实战Gradle》
2,《Android Gradle权威指南》
3,  https://www.jianshu.com/p/2d887a9b69fb
4,  https://www.w3cschool.cn/gradle/6qo51htq.html

c31d24808ef6cbe1a3b83f8565e7611e.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值