Змінна оболонки та системна властивість JVM — це різні вхідні дані конфігурації. Експорт http_proxy для curl не встановлює http.proxyHost усередині клієнта Java URLConnection.

Для JVM, у якої задіяні HTTP-з'єднання мають використовувати фіксований маршрут, аргументи запуску можуть зробити вибір явним:

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.

Схожі статті