Grab が依存関係を解決する前に Groovy のプロキシを設定する
リポジトリが必要とする HTTP と HTTPS の JVM プロパティを指定して Groovy を起動します。スクリプト文は Grab の解決後に実行されます。
Grape のプロキシプロパティを Groovy の起動時オプションに置きます:
groovy -Dhttp.proxyHost=proxy.example.net -Dhttp.proxyPort=8080 -Dhttps.proxyHost=proxy.example.net -Dhttps.proxyPort=8080 app.groovy値はホスト名と数値のポートであり、プロキシ URL ではありません。HTTP プロキシリストの HTTP 候補が、公開リポジトリへの経路にこの 2 つの値を与えます。同じ HTTP 中継が HTTP と HTTPS の両方の宛先ダウンロードを扱えます。
ここで設定する理由はタイミングです。Grab アノテーションはコンパイル時に依存関係を解決でき、通常のスクリプト文はその後に実行されます。後からの System.setProperty 呼び出しでは、すでに失敗したダウンロードを構成できません。
失敗したリポジトリの URL を使って、どの宛先スキームに経路が必要かを判断します。GrapeIvy では groovy.grape.report.downloads=true がダウンロード状況を報告します。GrapeMaven は独自のデバッグオプションを使います。アーティファクトのバージョン欠落やリポジトリの利用不能は、プロキシが正しく選ばれていてもリポジトリ側の問題のままです。