How to set proxy server for gradle?

2019-04-07 18:15发布

I need to set a proxy server to be able to use gradle from my company's network to download project dependencies.I tried setting the proxy for shell, but it didn't work, so i assume it is because of the commands, gradle using to download these dependencies, does not use http_proxy environment variable.

Which commands (like wget, curl) does gradle use when downloading project dependencies? How can i check these commands? I tried both --info and --debug options, but it only says for each file something like;

Download https://jcenter.bintray.com/com/android/tools/lint/lint/25.1.0/lint-25.1.0.pom

1条回答
时光不老,我们不散
2楼-- · 2019-04-07 18:34

Gradle has it's own dependency management system similar to maven. I think parts of the gradle publish plugin are backed by maven in some way (not verified). Regardless you shouldn't have to worry about that level of depth, gradle will handle it. Your problem is setting up the proxy. You just need to set some variables in $projectDir/gradle.properties, example:

#http proxy setup
systemProp.http.proxyHost=www.somehost.org
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=userid
systemProp.http.proxyPassword=password
systemProp.http.nonProxyHosts=*.nonproxyrepos.com|localhost

#https proxy setup
systemProp.https.proxyHost=www.somehost.org
systemProp.https.proxyPort=8080
systemProp.https.proxyUser=userid
systemProp.https.proxyPassword=password
systemProp.https.nonProxyHosts=*.nonproxyrepos.com|localhost

reference: https://docs.gradle.org/current/userguide/build_environment.html#sec:accessing_the_web_via_a_proxy

查看更多
登录 后发表回答