常跟 Android Studio 打交道,应该对 Gradle version 和 Android Plugin Version 不陌生,Gradle version 和 Android Plugin Version 是 Android studio 中用于配置 Gradle 和 Android Plugin for Gradle 的版本设置项,自己很多时候都会混淆它俩,所以查找资料,小总结一下。

说干就干!

一、Gradle 和 Android Plugin for Gradle

1、Gradle

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

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

2、Android Plugin for Gradle

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

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

3、Gradle 和 Android Plugin for Gradle 的关系

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

二、Gradle 和 Android Plugin for Gradle 的更新

1、更新 Android Plugin for Gradle

当更新 Android Studio 时,可能会收到一个提示,将 Gradle 的 Android 插件自动更新为最新版本。可以选择接受更新,也可以根据项目的构建要求手动指定版本。

可以在 Android Studio 中的 File > Project Structure > Project 菜单中的 Android Plugin Version 或顶级 build.gradle 文件中指定 Gradle 版本的 Android 插件。该插件版本适用于该 Android Studio 项目中内置的所有模块。以下示例将 Gradle 的 Android 插件从 build.gradle 文件设置为2.3.3版本:

buildscript {...dependencies {classpath 'com.android.tools.build:gradle:2.3.3'}
}

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

如果指定的插件版本尚未下载,则在下次构建项目时,或当点击 Android Studio 菜单栏中的 Tools > Android > Sync Project with Gradle Files 时,Gradle 将会下载(能翻则翻:P)。

ps:通过 https://jcenter.bintray.com/com/android/tools/build/gradle/ 可查看 Android Plugin for Gradle 的最新版本。

2、更新 Gradle

可以在 Android Studio 中的 File > Project Structure > Project 菜单中指定 Gradle 版本,也可以通过在 gradle/wrapper/gradle-wrapper.properties 文件中编辑 Gradle 分布引用。以下示例将 gradle-wrapper.properties 文件中的 Gradle 版本设置为3.3。

...
distributionUrl = https\://services.gradle.org/distributions/gradle-3.3-all.zip
...

基于国内某些不明原因,可能会一直下载编译中,这时,可通过 https://services.gradle.org/distributions/ 直接下载所需的 Gradle 版本,解压到 Android Studio 的 ** \ .gradle\wrapper\dists目录下,然后再通过上面的两种方法修改指定版本号为已下载解压的版本号。【亲测有效】


参考文章:
https://developer.android.com/studio/releases/gradle-plugin.html
https://www.zhihu.com/question/30432152
https://stackoverflow.com/questions/21792598/relation-between-gradle-version-and-gradle-build-tool-version

Gradle version 和 Android Plugin Version相关推荐

  1. 彻底搞懂Gradle、Gradle Wrapper与Android Plugin for Gradle的区别和联系

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  2. 【Android Gradle 插件】Android Plugin DSL Reference 离线文档下载 ( GitHub 下载文档 | 查看文档 )

    文章目录 一.Android Plugin DSL Reference 文档下载 二.Android Plugin DSL Reference 文档查看 一.Android Plugin DSL Re ...

  3. android5.1 sdk version,java - Android SDK version 23.6 - Stack Overflow

    Does it support java 8 yet? Eclipse is displaying this as a problem, surely it does support 8 by now ...

  4. MAC Android Studio| Error: The android gradle plugin version 3.0.0-alpha1 is too old

    building 报错 The android gradle plugin version 3.0.0-alpha1 is too old, please update to the latest v ...

  5. android studio gradle与gradle plugin version离线下载 从别的电脑上复制

    gradle plugin version下载 本地路径:C:\Users\FT\.gradle\caches\modules-2\files-2.1\com.android.tools.build\ ...

  6. Android Studio解决Plugin [id: ‘com.android.application‘, version: ‘x.x.x‘, apply: false] was not found

    运行gradlew失败报错: Plugin [id: 'com.android.application', version: '7.2.0', apply: false] was not found ...

  7. Manifest merger failed : Attribute meta-data#android.support.VERSION@value..

    在添加leakcanary依赖时出现如下问题 Manifest merger failed : Attribute meta-data#android.support.VERSION@value va ...

  8. 解决编译失败 Attribute meta-data#android.support.VERSION@value value=(26.0

    报错如下: Attribute meta-data#android.support.VERSION@value value=(26.0.0) from [com.android.support:des ...

  9. ERROR: This version of Android Studio cannot open this project, please retry with Android Studio 3.

    很多同学出现这样的问题,在导入我的项目的时候会同步失败,原因是Android Studio的版本比较低,需要升级到3.6及以上,因为我的Android Studio就是3.6.1,所有项目都是这个版本 ...

最新文章

  1. java中native的用法[转]
  2. 在Putty或mRemote下输入和显示中文
  3. alpinestars与丹尼斯_骑行靴|丹尼斯VS A星心得分享,它和普通鞋子不同之处竟在这里!...
  4. [转]一个总成本花费100W的失败项目的小小反省
  5. CODEVS-1082-线段树练习3-splay
  6. mysql语句 查询前5个_MySQL 查询语句--------------进阶5:分组查询
  7. leecode之aoti
  8. 算法大赛十强战队解题方案大公开!【附PPT下载】
  9. HDU 1166 敌兵布阵 【线段树-点修改--计算区间和】
  10. 201703-2-学生排队
  11. ios开发之 -- 强制横屏
  12. java 反编译 class_反编译class文件并重新编译的方法
  13. 计算机算法基础总结(借鉴、整理)
  14. web前端经典面试题及答案
  15. python当前时间获取_python 当前时间获取方法
  16. 如何快速部署企业私有云存储
  17. 零基础搭建自己的饥荒Don‘t Starve服务器,摆脱联机卡顿和小伙伴快乐联机
  18. 零基础该如何学好3D建模,学些什么,达到什么标准才能入行?
  19. js--动态生成表格
  20. 飞车手游显示服务器连接失败怎么办,QQ飞车手游拉取服务器失败 请检查网络稍后重试...

热门文章

  1. uniapp解析token获取用户信息
  2. 怎样基于VitePress(Vite官网主题)写自己文档
  3. Python之异常处理语句
  4. Git - 删除远程分支文件
  5. python-opencv之人脸检测
  6. Centos系统上nginx安装
  7. 软考---------软件设计师(中级)我的备考经历
  8. CentOS安装开发工具包
  9. vue三种ajax请求方式,vue请求数据的三种方式
  10. 融资租赁资产管理系统(FLAS)项目运维经验记录总结--org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl