常跟 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. Piranha实验总结
  2. mysql 分库分表,真的能支持服务无限扩容么?
  3. java 通配符 泛型_java中泛型之类型通配符(?)
  4. nanodet学习笔记 tensorrt
  5. 多层神经网络(BP算法)介绍
  6. activity 变成后台进程后被杀死_Android 后台运行白名单,优雅实现保活
  7. 保证MQ消费消息的幂等性,真可以用版本号的方式?
  8. 推荐四款可视化工具,解决 99% 的可视化大屏项目!
  9. 郝斌c语言视频笔记,郝斌老师C语言专题笔记
  10. 计算机网络网线制作与测试结果,《计算机网络》网线制作实验报告(1).doc
  11. PTA17-126 将数组中的数逆序存放 简单C语言
  12. Linux操作系统面试题
  13. 瑜欣平瑞通过注册:年营收6.6亿 胡云平一家三口为实控人
  14. 中国海外文物拍卖天价
  15. 别被别人抢走了你的时间
  16. day12-HTML、CSS与blog页面讲解
  17. 详解服务器异构计算FPGA基础知识
  18. 微信公众平台开发学习
  19. 图像特征提取与匹配之SIFT算法
  20. B站离线多机房架构实践

热门文章

  1. 计算机发展史的研究报告,一种对计算机发展史展开研究的策略
  2. 为iPhone6设计自适应布局(一)
  3. Linux虚拟机安装gcc(解决依赖)
  4. 三极管开关加速电容学习
  5. 直接读取ftp服务器文件,java读取ftp服务器文件
  6. work life balance
  7. CasperLabs:筑梦者的区块链
  8. centos 定时删除文件_Centos定时启动和清除任务
  9. react 组件列表
  10. java 怎么输出数组