Android进阶之路 - Gradle、Android plugin Version的概念与区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_20451879/article/details/85138675

起由 :因为开发中build项目失败,提示了Gradle相关问题 ;所以在好奇心的驱使之下,抽时间好好梳理了一下Gradle方面的知识 - -~

目录 :

  • Gradle 、Android Plugin for Gradle与俩者区别
  • 查看Gradle 版本与 Android plugin Version 版本
  • Gradle与Android plugin Version俩种形态的解决方式

Gradle 、Android Plugin for Gradle与俩者区别

  • Gradle

相对官方:
Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化建构工具。它使用一种基于 Groovy 的特定领域语言(DSL)来声明项目设置,抛弃了基于 XML 的各种繁琐配置。

大白话:
简单来说,Gradle 是一种构建工具,它可以帮你管理项目中的差异、依赖、编译、打包、部署 …,你可以定义满足自己需要的构建逻辑,写入到 build.gradle 中供日后复用。

  • Android Plugin for Gradle

Gradle 是一个构建工具,但它需要特定的插件来工作。Android Plugin for Gradle 即是 Gradle 的 Android 插件。

Android Studio 构建系统基于 Gradle,Gradle 的 Android 插件添加了特定于构建 Android 应用程序的几项功能。虽然 Android 插件通常以 Android Studio 的锁定步骤更新,但插件(以及其余的 Gradle 系统)可以独立于 Android Studio 运行,并单独更新。

  • Gradle 和 Android Plugin for Gradle 的区别

Gradle是一个独立运行的程序,不但可以与AndroidStudio协同工作还可以和Eclipse等IDE配合使用。 但由于Gradle发展速度比较快,导致Gradle版本不一。

故需要每个 Android 插件版本(Android Plugin for Gradle)需要与特定的 Gradle 版本相匹配才能编译成功。为了获得最佳性能,应该使用最新版本的 Gradle 和 Android 插件。

如Gradle 与 Android Plugin for Gradle 俩者的版本不对应,会导致build失败!

详情可以参考Android官方开发文档
在这里插入图片描述

如需下载Gradle最新版本,可以通过Gradle下载地址进行下载


查看Gradle 版本与 Android plugin Version 版本

  • 方式一

查看Gradle版本
在这里插入图片描述

查看 Android plugin Version 版本
在这里插入图片描述

  • 方式二

步骤 1:
在这里插入图片描述
步骤 2:
在这里插入图片描述


Gradle与Android plugin Version俩种形态的解决方式

静态设置(仅有Gradle设置)

  • 设置加载本地的Gradle
    在这里插入图片描述

  • 查看Gradle在本机的存储位置

找到 gradle\caches 空间(一般位于C盘的用户目录下,如果找不到请在文件右上角直接搜索;)
建议:删除不用的gradle版本 !以此在保证caches控件有足够的存储空间 > <~
在这里插入图片描述

动态设置 (包含Gradle与Android plugin Version)

  • 修改对应Project的build.gradle中的com.android.tools.build:gradle:版本号为提示版本
    (如修改 classpath 'com.android.tools.build:gradle:3.1.1’为 classpath ‘com.android.tools.build:gradle:3.2.1’);

Android Plugin for Gradle 的最新版本(不过个人感觉好像此资源网站很久没有更新了~)
在这里插入图片描述

  • 修改gradle-wrapper.properties中distributionUrl上的版本号与当前Gradle版本号一致

(如修改distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip为distributionUrl=https://services.gradle.org/distributions/gradle-4.6-all.zip);

如果自动下载失败,可以尝试通过此处下载,然后进行本地关联 ~ ~
在这里插入图片描述

  • 趣味场景 ~

部分开发者会在动态设置的时候,尝试直接以 + 来进行依赖,如:

直接将 classpath 'com.android.tools.build:gradle:2.3.0-beta1 
改为   classpath 'com.android.tools.build:gradle:2.3.0+ 解决

但是有的人表示 :

不应该在版本号中使用动态依赖关系,例如 'com.android.tools.build:gradle:2.+';
使用此功能可能导致意外的版本更新和难以解决的版本差异。

当然 ,以上这样处理结果如何;所遇问题如何;我都不太清楚,因为毕竟没有亲自去尝试 ~ ~ !

借鉴文章

猜你喜欢

转载自blog.csdn.net/qq_20451879/article/details/85138675