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

4

我下载了Android Studio 3.0并开始按照构建我的第一个应用程序教程进行操作。但Gradle抛出了以下错误:

无法解析com.android.support:appcompat-v7:26.1.0。

我在SO上搜索了类似的问题,例如这个那个,但是它们都没有帮助到我。


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

enter image description here

为了解决这个错误,我必须为Gradle实现代理,通过向gradle.properties文件添加以下行:

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属性中。

非常感谢!兄弟,这解决了我问题和Gradle的错误。我寻找解决方案花费了几个小时 :) - Ali.Ghzd
1个回答

6
我遇到了同样的错误。尝试了很多stackoverflow上的链接,但都没有帮助,直到这一个解决了问题。在我这种情况下,问题是由于gradle.properties文件中缺少https代理设置导致的。我添加了它,然后问题就解决了。
对于Android Studio 3,在项目的build.gradle文件中,你会看到以下内容:
allprojects {
    repositories {
        jcenter()
        google()
    }
}
运行在https上,因此,如果您在使用https代理的网络(大多数情况下是公司网络)中进行构建,并且忘记将其包含在gradle.properties文件中,则有可能会遇到问题。您可能会感觉Gradle的行为很奇怪,但实际上不是这样的。它只是缺少适当的网络配置。即使是离线构建设置也无法工作,因为它仍然需要jcenter()从最新的Android Studio下载文件的第一次构建应用程序时。

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

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

端口号应该是什么? - Megha Maniar
端口8080被代理地址用于连接您到互联网服务。请使用以下内容: systemProp.https.proxyPort=8080 - TNT

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