Android Studio之回退Gradle版本方法 (Minimum supported Gradle version is 4.10.1. Current version is 4.6.)

 
 
转 https://blog.csdn.net/m0_38025747/article/details/86684200

在使用Android Studio的过程中,AS经常会提示我们gradle已经更新,推荐我们升级更高版本的gradle;然而由于网络被墙,下载Google的依赖资源非常慢(Google的网络连接经常超时重置,无法正常下载),这时候只能回退以前版本或者翻墙下载,此处介绍一下回退到gradle旧版本的方法。

在本次升级中,手贱点了update,结果就给更新了4.10.1版本的gradle,结果半天连不上,run了4个小时也没下载成功。

更改方式:File>>Settings>>Build,Execution,Deployment>>Gradle

图中所标序号分别为:
1.使用默认的gradle wrapper(推荐方式)
即若待使用的gradle在用户主目录/.gradle/wrapper/dists/..存在的话,AS会直接使用本地资源,反之会去https\://services.gradle.org/distributions/gradle-对应版本-all.zip处下载并解压到本地。

2.使用本地的gradle编译
即直接使用本地gradle资源,不去网上下载,需注意的是要指定正确目录才能正确使用gradle资源(默认目录是用户主目录/.gradle/wrapper/dists/gradle-对应版本-all)。

然鹅在回退时我想当然地在build.gradle(Project)中将gradle版本改为本地已有的3.3时发生了如下错误:

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


点击fix选项后AS就自动给我下载了4.10.1版本,这不能接受。于是在官网查阅后,我发现在回退gradle版本时,首先要知道的是gradle plugin的版本和gradle本身的版本并非一一对应的,其关系如下:

Plugin version Required Gradle version
1.0.0 - 1.1.3 2.2.1 - 2.3
1.2.0 - 1.3.1 2.2.1 - 2.9
1.5.0 2.2.1 - 2.13
2.0.0 - 2.1.2 2.10 - 2.13
2.1.3 - 2.2.3 2.14.1+
2.3.0+ 3.3+
3.0.0+ 4.1+
3.1.0+ 4.4+
3.2.0 - 3.2.1 4.6+
3.3.0 - 3.3.2 4.10.1+
3.4.0+ 5.1.1+

因此gradle-wrapper.properties中的版本实际上就是gradle本身的版本,而build.gradle(Project)中的版本则是gradle plugin的版本,因此才出错。
因此更改如下即可:

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

现在用的XX-Net还是不够方便(浏览部分国外网站还行),估计还是搭个真的vpn才行。

Android Studio之回退Gradle版本方法的更多相关文章

  1. [Android Studio系列(五)] Android Studio手动配置Gradle的方法

    1 问题 (1) android sutdio第一次打开一个工程巨慢怎么办? (2) 手动配置Gradle Home为什么总是无效? (3) 明明已经下载了Gradle,配置了gradle home, ...

  2. android studio 更新Gradle版本方法

    在导入其他项目时,经常由于gradle版本不一致而导致不能编译 解决方法: 第一步: 按提示点击让它下载,其实目的并不是要它下载,因为这样速度会很慢,这样做只是为了让它在本地创建相应的目录结构 第二步 ...

  3. Android Studio导入第三方类库的方法

    Android Studio导入第三方类库的方法 本人也刚刚开始尝试做android app的开发,听说android studio是Google支持的android 应用开发工具,所以想应该肯定比E ...

  4. 拥抱 Android Studio 之五:Gradle 插件开发

    实践出真知 笔者有位朋友,每次新学一门语言,都会用来写一个贪吃蛇游戏,以此来检验自己学习的成果.笔者也有类似体会.所谓纸上得来终觉浅,绝知此事要躬行.这一章,笔者将以开发和发布一个 Gradle 插件 ...

  5. Android : Android Studio 更新至gradle 4.10.1后Variants API变化

    同步警告: WARNING: API 'variantOutput.getPackageApplication()' is obsolete and has been replaced with 'v ...

  6. 关于Android Studio里的Gradle,你所需要知道的都在这里了

    Gradle介绍 Gradle是一个先进的build toolkit,可以方便的管理依赖包和定义自己的build逻辑.到底有多先进,Android Studio官方集成Gradle,Google还专门 ...

  7. 【已解决】Android Studio下,gradle project sync failed 错误

    原文:[已解决]Android Studio下,gradle project sync failed 错误 Android studio下突然报错 gradle project sync failed ...

  8. android Log 等级以及在Android Studio 的Logcat中过滤方法

    Log等级 等级越高,问题越严重. Log.e(TAG,"级别5,错误信息"); Log.e(TAG,"级别5,错误信息"); Log.w(TAG," ...

  9. Android studio 3.0以上版本无法引入,找不到v4,v7包方案解决

    Android studio 3.0以上版本无法引入v4.v7包报红,即找不到v4.v7包,解决方案如下: 步骤: 1,Close Object,点击左上角的关闭工程. 2,点击x,删除项目. 3,重 ...

随机推荐

  1. python的多线程

    1.多线程的例子 import threading #首先导入threading模块,这是使用多线程的前提 from time import ctime,sleep def music(func): ...

  2. mysql设置某列不重复

    5.1版本以上:ALTER TABLE dbname.table ADD UNIQUE (fieldname); 数据库名为dbname,表名table,字段名fieldname.

  3. matlab 常用函数

    Matlab常用函数 Matlab的内部常数  eps   浮点相对精度  pi  圆周率  exp  自然对数的底数e  i 或j  虚数单位  Inf或 inf  无穷大 Matlab概率密度函数 ...

  4. Kafka(一)简介

    1.Kafka简介 Kafka已经被很多公司广泛应用,一款实时流式消息组件.发送消息端称为Producer,接收端称为Consumer,Kafka集群有多个kafka实例组成,每个实例称为broker ...

  5. c#自定义Attribute获取接口实现

    一般的接口实现多态 定义接口 interface Ipeople { void say(); } 定义实现的类 public class man : Ipeople { public void say ...

  6. H5富文本编辑器之初始化用于编辑的DOM-遁地龙卷风

    使用H5的全局属性contenteditable可以让DOM元素及其子元素变的可编辑 <div contenteditable id="editor"> </di ...

  7. TensorFlow在Windows上的CPU版本和GPU版本的安装指南(亲测有效)

    安装说明 平台:Window.Ubuntu.Mac等操作系统 版本:支持GPU版本和CPU版本 安装方式:pip方式.Anaconda方式 attention: 在Windows上目前支持python ...

  8. python3数学函数

    数 学 函 数 abs(x) 返回数字的绝对值,如abs(-10) 返回 10 ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5 cmp(x, y) 如果 x < y ...

  9. 论文笔记:Learning wrapped guidance for blind face restoration

    这篇论文主要是讲人脸修复的,所谓人脸修复,其实就是将低清的,或者经过压缩等操作的人脸图像进行高清复原.这可以近似为针对人脸的图像修复工作.在图像修复中,我们都会假设退化的图像是高清图像经过某种函数映射 ...

  10. PHP 【六】

    命名空间 教学网站的内容不知道再怎么“笔记化”,用之即可 面向对象 类定义 创建对象  $xxx = new 类名: 调用成员方法  $xxx->方法名(参数): 举例: <?php cl ...