シェル変数とJVMシステムプロパティは異なる設定入力です。curl のために http_proxy をエクスポートしても、Java URLConnection クライアントの内部で http.proxyHost が設定されるわけではありません。

参加する HTTP 接続が固定ルートを使うべき JVM では、起動引数によって選択を明示できます。

java -Dhttp.proxyHost=203.0.113.10 -Dhttp.proxyPort=8080 \
     -Dhttps.proxyHost=203.0.113.10 -Dhttps.proxyPort=8080 \
     -jar application.jar

エンドポイントは例示です。HTTP プロキシ一覧の公開 HTTP 候補は、アプリケーションがそのルートを許可する場合にこれらのフィールドを埋められます。ホストプロパティはホスト名または IP アドレスを受け取り、ポートは別に指定します。これは完全なプロキシ URL ではありません。

認証とバイパス規則には独自の設定が必要です。古い例に含まれているという理由だけで、文書化されていない http.proxyPassword プロパティが機能すると判断しないでください。文書化された認証 API と使用中の JDK のネットワークプロパティを確認してください。

これは参加する Java ネットワーク経路に当てはまります。HTTP クライアントを独自に設定したライブラリは別のポリシーに従うことがあります。すべてのシェル変数を JVM 引数に変換する時間を費やす前に、そのクライアントを特定してください。

関連記事