Gradle与Android Studio相关的知识点

2019-03-13  本文已影响0人  小may同学

1.gradle和gradlew的区别

wrapper-workflow.png
                                                      上图来自官方文档
       官方建议使用gradle wrapper来配置我们的项目依赖的gradle。使用AS打开一个新项目的时候,默认会先寻找当前项目路径下/gradle/wrapper/gradle-wrapper.properties文件,如果不存在就会弹如下提示框:
1.png
选OK,则会创建4个文件,并自动下载gradle-wrapper.properties文件中对应的gradle版本缓存到GRADLE_USER_HOME/wrapper/dists目录下:
2.png
gradle-wrapper.jar      包含用于下载Gradle分发的代码的Wrapper JAR文件。
gradle-wrapper.properties  负责配置Wrapper运行时行为的属性文件,例如与此版本兼容的Gradle版本。
gradlew,gradlew.bat    一个shell脚本和一个Windows批处理脚本,用于使用Wrapper执行构建。
       这样的话即使电脑里之前没有安装过gradle也能正常构建运行项目。在AS的Terminal中使用gradlew时,其实最终映射到GRADLE_USER_HOME/wrapper/dists/gradle-xx/bin下的gradle.bat。
3.png
上图中第一次执行gradle -v(Mac上执行./gradle -v),返回的Gradle版本是4.4,是我在环境变量里面配的gradle版本。第二次执行gradlew -v(Mac上执行./gradlew -v),返回的Gradle版本是4.10.1,是刚刚缓存到GRADLE_USER_HOME/wrapper/dists/下的gradle版本。

官方建议:把gradle文件夹和gradlew、gradlew.bat加入版本控制,方便统一管理所有开发人员项目中的gradle版本。

官方结论:根据操作系统可以运行gradlew或gradlew.bat代替gradle命令。

2.Gradle设置文件
settings.gradle文件位于项目根目录,用于指示 Gradle 在构建应用时应将哪些模块包括在内。
3.顶级构建文件
顶级build.gradle文件位于项目根目录,用于定义适用于项目中所有模块的构建配置。 默认情况下,此顶级构建文件使用 buildscript 代码块来定义项目中所有模块共用的 Gradle 存储区和依赖项。
4.模块级构建文件
模块级build.gradle文件位于各 project/module/ 目录中,用于配置适用于其所在模块的构建设置。 您可以通过配置这些构建设置来提供自定义打包选项(例如附加构建类型和产品风格),以及替换 main/ 应用清单或顶级 build.gradle 文件中的设置。
5.Gradle属性文件
Gradle还包括两个属性文件,均位于项目根目录中,可用于指定适用于 Gradle 构建工具包本身的设置:
gradle.properties文件可以在其中配置项目范围 Gradle 设置,例如 Gradle 后台进程的最大堆大小等。
local.properties文件为构建系统配置本地环境属性,例如 SDK/NDK 安装路径。该文件的内容由 Android Studio 自动生成并且专用于本地开发者环境,不应手动修改该文件,或将其纳入版本管理系统。

下面推荐几个官方文档地址:
1.Google官方Gradle-Plugin更新说明
2.Google官方配置构建
3.Android插件DSL参考
4.Gradle DSL参考
5.Gradle官方论坛
6.Github-gradle-issues
7.Java-Plugin文档

上一篇下一篇

猜你喜欢

热点阅读