无法解析 com.android.support:appcompat-v7:26.1.0。 => 配置 HTTP 代理

Could not resolve com.android.support:appcompat-v7:26.1.0. => configure HTTP proxy

我下载了 Android Studio 3.0 并开始关注 building my first app tutorial。但是 Gradle 抛出如下错误:

Could not resolve com.android.support:appcompat-v7:26.1.0.

我在 SO 上搜索了类似 and 的问题,但其中 none 对我有帮助。


最终我发现我正在为 Android Studio 使用代理:

要解决该错误,我也必须通过将这些行添加到 gradle.properties 文件来实现 Gradle 的代理:

systemProp.http.proxyHost=127.0.0.1
systemProp.http.nonProxyHosts=localhost, 127.0.0.1
org.gradle.jvmargs=-Xmx1536m
systemProp.http.proxyPort=8118

systemProp.https.proxyHost=127.0.0.1
systemProp.https.nonProxyHosts=localhost, 127.0.0.1
systemProp.https.proxyPort=8118

将上述语句添加到gradle.properties后,错误得到解决。请注意 HTTPHTTPS 代理需要添加到 Gradle 属性

我有同样的错误。尝试了很多 Whosebug 链接,但其中 none 个对这个链接有用。我的问题是由于 gradle.properties 文件中不存在的 https 代理设置。我把它包括在内并且它起作用了。

对于 android studio 3,在你项目的 build.gradle 文件中你有这个:

allprojects {
    repositories {
        jcenter()
        google()
    }
}

jcenter() 在 https 上运行,因此如果您在使用 https 代理的网络(大多数情况下是公司网络)中构建,并且您忘记将其包含在 gradle.properties 文件中,那么您很可能会面临这个问题。您可能会觉得 gradle 的行为很奇怪,但事实并非如此。它只是缺少正确的网络配置。即使是离线构建设置也不会工作,因为它仍然需要 jcenter() 来下载文件,这是您第一次在最新的 Android Studio 中构建应用程序。

我在 gradle.properties 中包含了我的 https 代理设置,如下所示:

systemProp.https.proxyHost=<proxy server address>
systemProp.https.nonProxyHosts=localhost, 127.0.0.1
systemProp.https.proxyPort=<port number>