一、Gradle 简介
1.1 什么是 Gradle?
Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的 项目自动化构建开源工具。它使用一种基于Groovy
的DSL
(Domain-Specific Language 领域特定语言)来声明项目设置,抛弃了基于 XML 的各种繁琐配置。面向 Java 应用为主。当前其支持的语言限于Java、Groovy、Kotlin 和 Scala,计划未来将支持更多的语言。
Gradle 是一个基于 JVM 的构建工具,是一款通用灵活的构建工具,支持 Maven、 Ivy 仓库、支持传递性依赖管理,而不需要远程仓库或者是pom.xml
和ivy.xml
配置文件,基于 Groovy(Groovy 是一种基于 JVM 的动态语言),build 脚本使用 Groovy 编写。
1.2 Gradle 的功能
- 基于声明的构建和基于约定的构建
- 为以依赖为基础的编程方式提供语言支持
- 构建结构化
- 深度 API
- Gradle 良好的扩展
- 多项目构建
- 多种方式管理依赖
- 易于移植
- Gradle 的构建脚本是采用 Groovy 编写,而不是 XML
- Gradle Wrapper 允许你在没有安装 Gradle 的机器上执行 Gradle 构建
- Gradle 是一个开源项目,并遵循 ASL 许可
1.3 Groovy 与 Java 比较
Groovy 是用于 JVM 的一种敏捷的动态语言,它是一种成熟的面向对象编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言。使用该语言不必编写过多的代码,同时又具有 闭包
和动态语言的其它特性。
- Groovy 完全兼容 Java 语法(因为他们都是基于 JVM 的)
- 分号是可选的
- 类、方法默认是
public
的 - 编译器给属性自动添加
getter/setter
方法 - 属性可以直接使用点号(
.
)获取 - 最后一个表达式的值会被作为返回值(即如果该方法需要返回值,那么
return
可以不写) ==
等同于equals()
,不会有NullPointerExceptions
1.4 Groovy 的一些高效特性
- 自带
assert(断言)
语句(可以在任何地方进行断言操作) - 可选类型定义(相当于一个弱类型编程语言)
- 可选的括号(如调用的参数括号可以不写)
- 字符串(有三种表达形式:单引号、双引号和三个单引号)
- 集合 API(Groovy 中 List、Map 有更简单的写法)
- 闭包
二、Gradle 安装配置(Windows)
2.1 前提条件
- JDK:
JDK 8
(需要安装 JDK & JRE 8 或更高版本,本次使用的是java version "1.8.0_65"
)
2.2 手动安装
目前的 Gradle 版本是版本 5.4.1,于 2019 年 4 月 26 日发布。分发 zip 文件有两种版本:
如有疑问,请选择仅二进制版本并在线浏览 文档 和 来源。需要使用旧版本吗?请参阅 版本页面。
2.3 环境配置
- 在磁盘D下新建目录
D:Gradle
,并将下载的gradle-5.4.1-bin.zip
解压至该文件夹中; - 编辑环境变量中的
Path
变量,添加条目D:Gradlegradle-5.4.1in
,单击“确定”保存。
2.4 验证 Gradle 是否安装成功
Windows + R
-> 输入cmd
进入命令行模式;- 运行
gradle -v
查看 Gradle 版本信息。
C:UsersAdministrator>gradle -v
Welcome to Gradle 5.4.1!
Here are the highlights of this release:
- Run builds with JDK12
- New API for Incremental Tasks
- Updates to native projects, including Swift 5 support
For more details see https://docs.gradle.org/5.4.1/release-notes.html
------------------------------------------------------------
Gradle 5.4.1
------------------------------------------------------------
Build time: 2019-04-26 08:14:42 UTC
Revision: 261d171646b36a6a28d5a19a69676cd098a4c19d
Kotlin: 1.3.21
Groovy: 2.5.4
Ant: Apache Ant(TM) version 1.9.13 compiled on July 10 2018
JVM: 1.8.0_65 (Oracle Corporation 25.65-b01)
OS: Windows 10 10.0 amd64