我正在尝试编译代理背后的Android项目。我的大多数依赖项都编译得很好,但是当我将Robolectric添加到build.gradle类路径时,我总是会遇到错误。所以我的第一个代理配置在Preferences -> HTTP Proxy
完成。当我尝试使用这些设置进行编译时,我收到了407响应:
Error:Could not HEAD 'http://repo1.maven.org/maven2/org/robolectric/robolectric-gradle-plugin/0.12.0/robolectric-gradle-plugin-0.12.0.jar'. Received status code 407 from server: AuthorizedOnly
由于我在HTTP Proxy
设置中提供了凭据,因此这没有任何意义。另外,我在HTTP Proxy
页面上尝试了test-url函数,它表示连接成功。
然后我尝试在gradle.properties文件中添加设置。然后,它给了我以下500错误:
Error:Could not HEAD 'http://repo1.maven.org/maven2/org/robolectric/robolectric-gradle-plugin/0.12.0/robolectric-gradle-plugin-0.12.0.jar'. Received status code 500 from server: ruleengineerror
有什么设置我忘记了吗?为什么我的mavenCentral中的其他依赖项能够编译?我刚刚进口了这个产品,所以我没有开始使用缓存,如果我把Robolectric拿出来就可以编译好。
任何帮助将不胜感激。如果这太局部化,我会提前道歉。
答案 0 :(得分:1)
对于遇到此问题的任何人,我终于找到了一个解决方案,让我顺利地下载代理后面的所有依赖项。
我正在尝试在NTLM代理背后工作,这对我来说与Gradle没有很好地合作。为了解决这个问题,我下载了SquidMan并进行了设置。像其他一些人在其他帖子中建议的那样,我正在建立一个中介代理来转发我的请求并将我的凭据输入主代理。
设定:
Gradle现在应该可以顺利下载代理服务器后面的依赖项。
希望这有助于某人!
答案 1 :(得分:0)
Robolectric利用Maven配置进行依赖解析(非常奇怪)。看看我为答案写的这篇博客文章。
Robolectric and Gradle behind Proxies and Firewalls
为了进一步说明这一点,您需要使用代理信息配置.m2 / settings.xml。