AndroidStudio中的Gradle文件
gradle相关的文件
文件 | Value |
---|---|
.gradle | .gradle文件夹是编译后生成的文件 |
app/build.gradle | Module 下的 build.gradle |
gradle | 文件夹是 Gradle Wrapper 的版本配置,实现了无需手动下载 Gradle,通过配置即可自动下载,需要与 build.gradle 配合使用 |
build.gradle | Gradle 根工程配置文件,这是 Project 下的 build.gradle |
gradle.properties | Gradle 属性配置文件,值会添加到 project 当中 |
gradlew | Linux、Mac 平台下,用于执行 Gralde 命令的包装器脚本 |
gradlew.bat | Windows 平台下,用于执行 Gralde 命令的包装器脚本 |
local.properties | 该文件一般用来存放该Android工程私有的属性配置,比如Android的sdk路径等等。local.properties文件一般都是存储到本地,禁止提交到服务器上 |
settings.gradle | Gradle 工程初始化配置文件,它的作用就是用于多项目构建 |
gradle相关文件—Project层级
settings.gradle
- settings.gradle文件在跟目录下,它的作用就是描述Project所依赖的Module
正常情况
|—— demo:
|—— settings.gradle
include ':demo'
local.properties
Android studio 自动生成,用于配置本地的 SDK、NDK 路径
ndk.dir=/Users/em/Library/Android/android-ndk
sdk.dir=/Users/em/Library/Android/sdk
gradle.properties
- gradle.properties文件,专门用来配置全局键值对数据的。可用于存放敏感数据。
- 将它从git版本控制中排除,这样gradle.properties文件只能保留在本地,从而不用担心keystore文件等敏感信息泄漏。
采用键值对的方式,写法:key=value
org.gradle.jvmargs=-Xmx2048m
android.useAndroidX=true
android.enableJetifier=true
在gradle.properties中存放敏感数据
KEY_PATH=/demo/key.jks
KEY_PASS=123456
ALIAS_NAME=key
ALIAS_PASS=123456
gradlew与gradlew.bat
gradlew.bat是bat 脚本,Windows 用户可以通过它执行 Gradle 任务,配合gradle文件夹使用。
而Linux使用的是gradlew,gradlew是一个shell 脚本,Unix 用户可以通过它来执行 Gradle 任务。
$demo wrapper --gradle-version 6.1.1
:wrapper
BUILD SUCCESSFUL
Total time: 3.546 secs
生成的目录结构
|____gradle
| |____wrapper
| | |____gradle-wrapper.jar //包含 Gradle 运行时的逻辑代码
| | |____gradle-wrapper.properties //配置文件
|____gradlew //Linux 下可执行脚本
|____gradlew.bat //Windows 下可执行脚本
gradle文件
- gradle-wrapper.jar:包含 Gradle 运行时的逻辑代码。
- gradle-wrapper.properties:负责配置包装器运行时行为的属性文件,用来配置使用哪个版本的 Gradle 等属性。
#Thu Jul 30 15:59:48 CST 2020
# Gradle 解压后存储的根目录
distributionBase=GRADLE_USER_HOME
# Gradle 解压后的存放位置
distributionPath=wrapper/dists
# Gradle压缩包存储根目录
zipStoreBase=GRADLE_USER_HOME
# Gradle 压缩包的存放位置
zipStorePath=wrapper/dists
# Gradle 压缩包的下载地址
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip