LoginSignup
117
97

More than 5 years have passed since last update.

Gradleでのプロキシ設定

Posted at

社内ネットワークでAndroidアプリをGradleビルドする際にプロキシ設定が必要だったのでそのメモ。

gradlewファイルへの設定

Gradle実行時にUnknownHostExceptionが発生して失敗してしまったので設定しました。

gradlew または gradlew.bat の先頭に以下を追記します。

set JAVA_OPTS=-DproxyHost=myproxy.co.jp -DproxyPort=8080 -Dhttp.proxyUser=**** -Dhttp.proxyPassword=**** -Dhttps.proxyUser=**** -Dhttps.proxyPassword=****

gradlew実行時に、GradleのZIP(gradle-1.xx-all.zip)がない場合は取得に行くので必要となります。
ZIPファイルをダウンロードした後は設定を削除してもOKです。

gradle.propertiesへの設定

gradlewファイルに設定後も以下のようにプロキシのエラーが発生したので設定しました。

Failed to get resource: GET. [HTTP HTTP/1.0 407 Proxy Authentication Required: http://repo1.maven.org/maven2/com/android/tools/build/gradle/maven-metadata.xml]
Error listing versions of com.android.tools.build:gradle using class org.gradle.
api.internal.artifacts.repositories.resolver.MavenVersionLister$1. Will attempt an alternate way to list versions. This behaviour has been deprecated and is scheduled to be removed in Gradle 2.0
Failed to get resource: GET. [HTTP HTTP/1.0 407 Proxy Authentication Required: http://repo1.maven.org/maven2/com/android/tools/build/gradle/]

[ユーザーディレクトリ]/.gradle/gradle.properties(なければ作成する)に以下のように設定します。

systemProp.http.proxyHost=myproxy.co.jp
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=****
systemProp.http.proxyPassword=****
systemProp.https.proxyHost=myproxy.co.jp
systemProp.https.proxyPort=8080
systemProp.https.proxyUser=****
systemProp.https.proxyPassword=****

実行時にいろいろアクセスするようです。

おまけ:ZIPファイルが壊れている場合

gradlewファイルにプロキシ設定をして実行してもダウンロードされたZIPファイルが壊れていてうまく開けないことがありました。

Exception in thread "main" java.lang.RuntimeException: java.util.zip.ZipException: error in opening zip file
at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:78)
at org.gradle.wrapper.Install.createDist(Install.java:47)
at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:129)
at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48)
Caused by: java.util.zip.ZipException: error in opening zip file
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.(ZipFile.java:214)
at java.util.zip.ZipFile.(ZipFile.java:144)
at java.util.zip.ZipFile.(ZipFile.java:158)
at org.gradle.wrapper.Install.unzip(Install.java:160)
at org.gradle.wrapper.Install.access$400(Install.java:29)
at org.gradle.wrapper.Install$1.call(Install.java:70)
at org.gradle.wrapper.Install$1.call(Install.java:47)
at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65)
... 3 more

このとき、ZIPファイルを手動でダウンロードして配置したら解決しました。
ダウンロードURLは、gradle/wrapper/gradle-wrapper.propertiesdistributionUrlに記述されています。

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-1.xx-all.zip

ファイルの配置先は[ユーザーディレクトリ]/.gradle/wrapper/dists/です。

117
97
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
117
97