Android Studio Gradle无法同步(二)

疫情概要

国内疫情概要

5月7日0—24时,31个省(自治区、直辖市)和新疆生产建设兵团报告新增确诊病例1例,为本土病例(在吉林);无新增死亡病例;新增疑似病例3例,均为境外输入病例(在上海)。

海外疫情概要

世界卫生组织:截至欧洲中部时间7日10时(北京时间7日16时),全球新冠确诊病例较前一日增加83465例,达到3672238例;死亡病例较前一日增加6539例,达到254045例。

美国约翰斯·霍普金斯大学:根据北京时间8日6时40分查询到的数据,全球确诊病例达3836215例,死亡病例为268999例。美国确诊病例升至1254740例,死亡病例达75543例。

前言

前几周,小编娇贵的Mac Pro频频无故断电,并且必须要连接外接电源才能开机,该问题最早发生在去年2019年冬天,但最近是越发的频繁了,故而预约了Apple 西湖 店自行送修。其实小编是去了两趟,由于第一次无法现场复现,所以就只是重装了系统,第二次去,才答应换电池套装。

换了电池之后,没有从Time Machine中做全盘恢复,只是恢复了部分资料,但几天后Android Studio 却无法同步Gradle文件。本篇就记录一下处理的这个艰辛过程,方便以后回述。

报错详情

1
2
3
4
5
6
7
8
9

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'Test Application'.
> Could not resolve all artifacts for configuration ':classpath'.
> Could not download gradle.jar (com.android.tools.build:gradle:3.6.3)
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.6.3/gradle-3.6.3.jar'.
> Could not GET 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.6.3/gradle-3.6.3.jar'. Received status code 400 from server: Bad Request

其中 400 Bad Request 是由于明显的客户端错误(例如,格式错误的请求语法,太大的大小,无效的请求消息或欺骗性路由请求),服务器不能或不会处理该请求。

尝试处理(无效)

解决方式(有效)

/Users/(用户名)/.gradle/gradle.properties文件内发现如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
## For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
#
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx1024m -XX:MaxPermSize=256m
# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
#
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
#Sun Mar 29 16:36:14 CST 2020
systemProp.https.proxyPort=80
systemProp.http.proxyHost=mirrors.neusoft.edu.cn
systemProp.https.proxyHost=mirrors.neusoft.edu.cn
systemProp.http.proxyPort=80

最后4行指定了一个代理,原本以为是AS设置里面配了Http Proxy Auto-detect proxy setting引起的。

Auto-detect proxy setting

之后尝试将最后4行的代理删了,结果就可以了。害得我辛辛苦苦折腾了大半天。

简单来讲就是删除 gradle.properties内的代理配置

其实小编之前那篇 Android Studio Gradle无法同步也试通了一种方式,不过没有在这台机子上试试。不过 Android Studio Gradle无法同步中通过修改host文件添加索引的方式也不便利。

坚持原创技术分享,您的支持是对我最大的鼓励!