透過 Proxy 存取網路
配置 Proxy(例如,用於下載依賴項)是透過標準 JVM 系統屬性完成的。
這些屬性可以直接在建構腳本中設定。例如,設定 HTTP Proxy 主機可以使用 System.setProperty('http.proxyHost', 'www.somehost.org')
來完成。
或者,這些屬性可以在 gradle.properties
中指定。
範例 1: 使用 gradle.properties
配置 HTTP Proxy
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 有單獨的設定。
範例 2: 使用 gradle.properties
配置 HTTPS Proxy
systemProp.https.proxyHost=www.somehost.org systemProp.https.proxyPort=8080 systemProp.https.proxyUser=userid systemProp.https.proxyPassword=password # NOTE: this is not a typo. systemProp.http.nonProxyHosts=*.nonproxyrepos.com|localhost
SOCKS 有單獨的設定。
範例 3: 使用 gradle.properties
配置 SOCKS Proxy
systemProp.socksProxyHost=www.somehost.org systemProp.socksProxyPort=1080 systemProp.java.net.socks.username=userid systemProp.java.net.socks.password=password
您可能需要設定其他屬性才能存取其他網路。
實用參考資料
NTLM 驗證
如果您的 Proxy 需要 NTLM 驗證,您可能需要提供驗證網域以及使用者名稱和密碼。
有 2 種方式可以提供網域以驗證到 NTLM Proxy
-
將
http.proxyUser
系統屬性設定為類似domain/username
的值。 -
透過
http.auth.ntlm.domain
系統屬性提供驗證網域。