对于一个AS项目的各个目录的作用有些还是不太了解,今天记录一下AS项目中的gradle目录,gradle目录包含了gradle-wrapper文件,gradle-wrapper文件本质上是一个脚本文件,它的作用就是帮助我们安装、部署Gradle插件,简化我们的工作,通常gradle-wrapper文件安装的是最新的Gradle版本插件。
gradle目录下的文件
gradle-wrapper.preperties是gradle-wrapper文件的属性配置文件,用于指定要安装的Gradle插件的所在位置。如果使用gradle-wrapper方式来配置Gradle产检,gradle-wrapper文件首先会从本地的文件系统上去寻找是不是存在gradle-wrapper想要安装的Gradle插件版本,如果存在则使用本地的,如果不存在,则到gradle-wrapper.properties属性配置文件的distributionUrl所指向的网站上去下载想要的Gradler插件版本。那么就会有这样的一个疑问?gradle-wrapper到本地的文件系统的哪一个目录上去寻找呢?带着这个疑问我们来看看gradle-wrapper.properties属性配置文件的内容
gradle-wrapper.properties文件
其中红色部分框起来的是gradle-wrapper想要的Gradle插件的版本号;
distributionBase=GRADLE_USER_HOME 和distributionPath=wrapper/dists ; 这两个属性就指明了下载的gradle文件的解压目录,上面两个属性完整的和一起应该为GRADLE_USER_HOME/wrapper/distsmuGRADLE_USER_HOME目录通常情况下指的是C:\users\\.gradle目录,比如我的电脑上GRADLE_USER_HOME目录指的是C:\Users\Administrator\.gradle
而zipStoreBase=GRADLE_USER_HOME 和zipStorePath=wrapper/dists ;这两个属性用于指定gradle的zip文件所在的目录,和上面基本类似,如果当本地没有缓存gradle,那么gradle wrapper会从distributionUrl指定的网站上去下载,其中 gradle-4.4-all.zip就是gradle wrapper想要的gradle版本。因此如果我们想要改变gradle-wrapper安装的Gradle插件的版本,则可以更改红色方框的版本号即可。
不知道大家有没有遇到过下面这个弹窗:
插件更新提醒
看上面主要的信息,大概说的是现在Gradle插件的最新的版本是4.4,而当前项目使用的Gradle插件的版本是3.1.3,要不要更新到最新的Gradle插件,现在又有疑问,这个3.1.3是在哪指定的?默认情况下,使用gradle-wrapper文件来配置gradle插件的方式是没有启动的,我们打开全局的gradle配置文件,在buildscript闭包的子闭包dependencies闭包下有这样一个配置
全局的gradle构建脚本文件
这里指定了我们当前项目想要使用的Gradle插件的版本号,这个Gradle插件会在repositories代码仓库中去下载,我认为如果选择使用gradle-wrapper文件来安装、配置gradle文件的话,上面的那行代码将会被忽略。如果有啥需要补充的或者错误的地方,希望大家能够指点一下。