Променливата на shell и системното свойство на 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 клиент може да следва друга политика. Идентифицирайте този клиент, преди да губите време да превеждате всяка променлива на shell в аргумент на JVM.

Подобни статии