51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Android工程中Gradle、Gradle Wrapper与Android Plugin for Gradle的区别和简介

1、什么是Gradle? {#1、什么是Gradle?}

  1. Gradle是一个构建系统、构建工具,用来编译Android APP,能够一站式的编译、打包。也就是把项目里的文件、文件夹按照一定的规则关联起来,形成一个项目的工具,它不单单用在AS上。在AS第一次启动时也会去自动下载Gradle。
  2. Gradle对应的是:gradle/wrapper里的distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip
  3. Gradle其实跟AS没有必然的关系,在Google推出Android5.0时,在AS中选择了Gradle作为构建工具,为了支持Gradle在AS上的使用,Google开发了一个插件:Android Gradle Plugin,所以我门能在AS上使用Gradle是因为这个插件的原因。大家在项目的根目录下有个build.gradle,就能找到:classpath 'com.android.tools.build:gradle:4.0.2',这个就是依赖Gradle的代码,版本号代表的是插件的版本,不是Gradle的版本。

2、Gradle Wrapper {#2、Gradle-Wrapper}

本意为Gradle的包装,它的作用是简化Gradle本身的安装和部署。不同版本的项目可能需要不同版本的Gradle,手工部署比较麻烦,而且维护性比较差,所以需要Gradle Wrapper来帮你搞定。Gradle Wrapper是Gradle项目的一部分。

两个不同版本的项目,如果同时运行,本地如果只装了其他的一个版本的Gradle,那肯定就不能同时运行两个项目,为了解决这个问题,Google推出了Gradle Wrapper的概念,它在每个项目里都配置了指定的版本的Gradle,可以理解为每个项目在本地都有一个相对应版本的Gradle,通过这个就可以在不同的项目里使用不同的Gradle版本来构建项目。

3、Gradle插件 {#3、Gradle插件}

Gradle插件跟Android SDK BuildTool有关,因为它还承担AS里的编译相关的功能,这也是我们为什么必须要在local.properties里写明SDK路径的原因。

Gradle插件独立于AS运行,所以它的更新也是与AS分开的,Gradle插件会有版本号,每一个版本号对应一个或者一些Gradle发行版本,如:gradle-5.4.1-all.zip

参考链接:https://www.jianshu.com/p/0746e554f373


赞(0)
未经允许不得转载:工具盒子 » Android工程中Gradle、Gradle Wrapper与Android Plugin for Gradle的区别和简介