Gradle 爬坑指南 -- 概念初解、Grovvy 语法、常见 API(2)
Gradle 安装
上文书 Gradle 运行在 JVM 之上, 因此需要 JDK1.8 或以上 java 环境
1. 下载 Gradle 版本
从 Gradle 官方上下载,地址:Gradle 官网下载地址,选择 .all
的包下载,我下的是 6.6.1,尽量选择较新的版本
2. 配置项目根目录 build.gradle
脚本文件 Gradle 工具版本号
buildscript {
repositories {
google()
jcenter()
}
dependencies {
...
classpath 'com.android.tools.build:gradle:4.0.1'
...
}
}
复制代码
这里 Gradle 工具的版本号要跟着 AS 的版本号走,AS 是哪个版本,这里就写哪个版本。Gradle 工具中的 API 是给 AS 用的,自然要跟着 AS 的版本变迁
当然这也会对 Gradle 构建工具版本有要求:
- 第一,大家进来使用比较新的版本号
- 第二,若是 Gradle 版本太低,编译时会有提示的,告诉你最低 Gradle 构建工具版本是多少
3. 使用本地 Gradle 文件编译项目
Gradle 拥有良好的兼容性,为了在没有 Gradle 环境的机器上也能顺利使用 Gradle 构建项目,AS 新创建的项目默认会在根目录下添加 wrapper 配置
其中 gradle-wrapper.properties
文件中提供了该项目使用的 Gradle 构建工具远程下载地址,这里会对应一个具体的版本号,IDE 开发工具默认会根据这个路径去下载 Gradle 给该项目使用
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
复制代码
这样就会产生一个问题:
每个项目单独管理自己的 gradle,很可能会造成机器上同时存在多个版本的 Gradle,进而存在多个版本的 Daemon 进程,这会造成机器资源吃紧,即便关闭 AS 开发工具也没用,只能重启机器才会好转
所以这里我推荐,尤其是给使用 AS 的朋友推荐:在本地创建 Gradle 环境,统一管理 Gradle 构建工具,避免出现多版本同时运行的问题。AS 本身就很吃内存了,每一个 Daemon 构建进程起码都是 512M 内存起步的,多来几个 Daemon 进程,我这 8G 的 MAC 真的搂不住
- 打开 AS 中 Gradle 配置:
gradle-wrapper.properties
-- 使用 wrapper 也就是 AS 来管理 GradleSpecifiled location
-- 使用本地文件,也就是我们自己管理 Gradle
- 在本地解压 Gradle 压缩包,记住路径,下面配 path 需要这样配置后,AS 会忽略
gradle-wrapper.properties
文件
4. 配置 path
这里只说 MAC 环境
open -e .bash_profile
打开配置文件- 添加
GRADLE_HOME
、PATH
export GRADLE_HOME=/Users/zbzbgo/gradle/gradle-6.6.1
export PATH=${PATH}:/Users/zbzbgo/gradle/gradle-6.6.1/bin
----------------官方写法如下--------------------------------
export GRADLE_HOME=/Users/zbzbgo/gradle/gradle-6.6.1
export PATH=$PATH:$GRADLE_HOME/bin
复制代码
source .bash_profile
重置配置文件,以便新 path 生效open -e ~/.zshrc
打开另一个配置- 在最后一行添加
source ~/.bash_profile
source ~/.zshrc
重置配置文件
配置 zshrc 是因为有的机器 bash_profile 配置不管用,添加这个就行了
5. 测试 Gradle 安装是否成功
运行 gradle --version
,出现版本号则 Gradle 配置成功
6. 执行一次 Gradle 命令
学习新语言我们都喜欢来一次 hello world,这里我们也来一次
随便创建一个文件夹,在其中创建一个文件,以.gradle
结尾,使用 text 编辑器打开,输入:
println("hello world!")
复制代码
然后 gradle xxx.gradle
执行该文件
OK,成功,大家体验一下,groovy 是种语言,gradle 是种构建工具,可以编译 .gradle
文件
Gradle init 初始化命令
我们平时都是用 AS 开发的,AS 创建 Android 项目时默认就会把 Gradle 相关文件都创建出来。其实 Gradle 和 git 一样,也提供了 init 初始化方法,创建相关文件
运行 init 命令要选择一些参数,其过程如下:
- 创建一个文件夹,cd 到该目录,执行
gradle init
命令 - 命令行提示选择项目模板
- 命令行提示选择开发语言
- 命令行提示选择脚本语言
- 输入工程名
- 输入资源名
了解 Gradle Wrapper 文件
上面虽然说了用 AS 开发我们最好使用本地 Gradle 文件的方式统一配置、管理 Gradle 构建工具,但是 AS Android 项目中的 Wrapper 文件夹的内容还是有必要了解一下的,这可以加深我们对 Gradle 下载、管理的了解
Gradle Wrapper 文件的作用就是可以让你的电脑在不安装配置 Gradle 环境的前提下运行 Gradle 项目,你的机器要是没有配 Gradle 环境,那么你 clone gradle 项目下来,执行 init 命令,会根据 gradle-wrapper.properties 文件中声明的 gradle URL 远程路径去下载 gradle 构建工具,cd 进该项目
gradle -v
--> linux 平台命令gradlew -v
--> window 平台命令
然后就可以在项目目录下运行 gradle 命令了,不过还是推荐大家在机器配置统一的 Gradle 环境
gradlew
--> linux 平台脚本gradlew.bat
--> window 平台脚本gradle-wrapper.jar
--> Gradle 下载、管理相关代码gradle-wrapper.properties
--> Gradle 下载、管理配置参数
gradle-wrapper.properties 文件中参数详解:
distributionUrl
--> Gradle 压缩包下载地址zipStoreBase
--> 本机存放 Gradle 压缩包主地址zipStorePath
--> 本机存放 Gradle 压缩包主路径- Gradle 压缩包完整的路径是 zipStoreBase + zipStorePath
distributionBase
--> 本机 Gradle 压缩包解压后主地址distributionPath
--> 本机 Gradle 压缩包解压后路径- Gradle 解压完整的路径是 distributionBase + distributionPath
- distributionBase 的路径是环境 path 中 GRADLE_USER_HOME 的地址
- Windows:
C:/用户/你电脑登录的用户名/.gradle/
- MAC:
~/.gradle/
- 你 MAC 要是配了 Gradle 环境变量,distributionBase 就是你自己解压缩的 gradle 路径
这几个地址还是要搞清楚的~
链接:https://juejin.cn/post/6888977881679495175
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。