Android Gradle 学习笔记(二):Gradle Wrapper

Wrapper,就是对Gradle的一层包装,便于在团队开发过程当中统一Gradle构建的版本。这样你们就可使用统一的Gradle版本进行构建,避免由于Gradle的版本不统一带来的没必要要的问题。shell

这里咱们把Wrapper这块的内容放在第二节的缘由为,咱们在项目开发中,使用的都是Wrapper这种方式。而不是咱们在第一节中讲的那样,本身下载一个压缩包,配置环境的方式。Wrapper在Window下是一个批处理文件,在Linux/Mac下是一个shell脚本。当你使用Wrapper启动Gradle时,Wrapper会检查Gradle有没有被下载和关联,若是没有就会从配置的地址下进行下载并运行构建。这对咱们开发者来讲是很是友好的,只要执行Wrapper命令,它就能帮你搞定一切。网络

下面咱们来详细讲述一下Wrapper相关的知识。app

1、生成Wrapper

Gradle提供了内置的Wrapper task来帮助咱们生成Wrapper文件所需的目录文件,在一个项目的目录下输入gradle wrapper便可生成:gradle

生成的文件以下:url

gradlew 和 gradlew.bat 分别是 Linux 和 Windows 下的可执行脚本,他们的用法是和Gradle原生命令是同样的,Gradle怎么用,他们就能够怎么用。spa

gradle-wrapper.jar是具体业务逻辑实现的jar包,gradlew最终仍是使用Java执行的这个jar包来执行相关呢的Gradle操做。code

Wrapper 配置引伸:blog

gradle wrapper --gradle-version : 用于指定使用的Gradle的版本。ip

gradle wrapper --gradle-distribution-url :用于指定下载Gradle发行版的url地址。开发

2、gradle-wrapper.properties 文件说明

gradle-wrapper.properties 是 gradle wrapper 的配置文件,内容以下:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

下面是相关字段的说明:

  • distributionBase:下载的Gradle压缩包解压后存储的主目录。
  • distributionPath:相对于distributionBase的解压后的Gradle压缩包的路径
  • distributionUrl:Gradle发行版压缩包的下载地址
  • zipStoreBsae:同distributionBase,只不过是存放zip压缩包的
  • zipStorePath:同distributionPath,只不过是存放zip压缩包的

在这些字段中,比较重要的字段就是distributionUrl,此字段是下载Gradle的路径,决定了依赖的Gradle版本,若是运行./gradlew的时候一直卡的不动,多是网络访问不通。通常的解决思路为:FQ or 更换其余镜像地址。

相关文章
相关标签/搜索