Android Studio 3.1.4 Gradle同步失败

9
每当我在Android Studio中创建一个新项目时,它都会在Gradle同步阶段失败,并且总是出现相同的错误:
Connection timed out: connect

org.gradle.internal.resource.transport.http.HttpRequestException: Could not GET 'https://jcenter.bintray.com/com/android/tools/build/gradle/3.1.4/gradle-3.1.4.pom'.

以下是 IDE 的屏幕截图:

当通过 GET 访问此链接: https://jcenter.binary.com/com/android/tools/build/gradle/3.1.4/gradle-3.1.4.pom 时,就会出现错误,但可以接收其他链接,例如 dl.google.com 和 SDK Manager。 我甚至在 AS 3.1.3 版本上也遇到了这个错误,我一直无法使用 Android Studio 创建 Android 应用程序。虽然使用 Eclipse ADT 可以轻松完成,但我想使用官方的 Android Studio,因为谷歌支持并推荐使用 Android Studio

是否有解决这个烦人的 Gradle 错误的方法? (我已经在 GoogleStack Overflow 上搜索了一千次)


1
尝试在Android Studio中设置HTTP代理并使用VPN。 - masoud vali
我已经尝试过了。请注意我说过:“但它可以接收其他链接,如dl.google.com和SDK Manager”。 - HF_
@هادیفرید 检查我的答案,你有时需要清除缓存并重新打开Android Studio。 - ʍѳђઽ૯ท
请不要编辑我的帖子 :) 这句话确切意思是什么? - ʍѳђઽ૯ท
你的Gradle分发URL是什么? - Kruti Parekh
可以发布你的“build.gradle”文件吗? - shizhen
7个回答

19

终于成功了!

更新(最佳答案)

JCenter检测到大多数VPN,我为你们(伊朗开发者)提供更好的解决方案:

有一个服务可以帮助我们跨过限制(例如JCenterAndroid Developer等许多服务):https://shecan.ir (شکن),你可以使用这个快速的服务,无需断开连接或其他麻烦(它使用DNS来绕过限制,所以通常比VPN更快)。

旧答案

亲爱的伊朗开发者,您可以通过以下简单步骤轻松解决此问题:

1- 打开 Psiphon

2- 在 Psiphon(VPN)中进入设置->本地代理端口->HTTP,HTTPS:63620 - SOCKS:63621。这将强制Psiphon始终使用端口63620进行HTTP。

3- 转到 AS 设置->外观和行为->系统设置->HTTP代理->手动代理配置->HTTP:主机名:127.0.0.1 - 端口:63620->取消选中代理身份验证

注意:这些端口(6362063621)是自定义的,但Psiphon的HTTP端口和AS的HTTP代理设置必须相同。

4 - 注意: Android Studio 在您创建项目的第一次使用时只能在线工作。 之后,您可以离线工作并构建项目或再次使用 Gradle 同步。

完成!


无法工作。而且,我不确定使用伊朗DNS服务器是否安全=( - StayCool

3
当然,链接被我们(伊朗IPs)封锁,所以想法是启用VPN,然后重新打开Android Studio,如果它无法再次下载,请使缓存失效/重启

(Android Studio -> 文件 -> 使缓存失效/重启)

然后你就可以开始使用了。

这也可能会发生在添加一个Gradle.build库时,这可以通过此方法绕过。


我已经启用了VPN和HTTP代理,它可以连接到developer.android.com... 我的问题是jcenter。 - HF_
Android Studio -> 文件 -> 无效缓存/重启。没有更改 :( - HF_
当VPN出现问题或无法连接到服务器时,这种情况也会发生。也许OpenVPN可以帮忙解决。 - ʍѳђઽ૯ท
大师,我的 VPN 完美地工作了,Android Studio 可以连接到被我们国家限制的服务器。 - HF_
1
我已经尝试了“无效缓存”,但是仍然出现相同的错误。而且我没有使用任何代理,因为我直接连接到互联网。 - F0r3v3r-A-N00b

1
我在更新Android Studio后也遇到了这个问题。
通过在项目级别的build.gradle文件中降级com.android.tools.build:gradle的版本,我解决了这个问题,就像旧项目一样。
1> 打开另一个项目
-------检查项目级别gradle中的com.android.tools.build:gradle版本
-------检查gradle-wrapper.properties中的distributionUrl版本
2> 在你的项目中应用这两个版本
项目级别的build.gradle
buildscript {
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.1' // your version

gradle-wrapper.properties

distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip // your version

同步并运行,所有错误消失!

1

1

使用 Hotspot Shield

我面临着同样的问题,因为该服务在叙利亚被禁止。


这应该作为注释。 - akshay

0
我遇到了相同的问题,将gradle版本更新为最新版本:
旧的
classpath 'com.android.tools.build:gradle:3.1.3'

新的

classpath 'com.android.tools.build:gradle:3.1.4'

它正常工作了。


0
在我的情况下,我需要添加 google()
buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.4'
    }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接