En shellvariabel och en JVM-systemegenskap är olika konfigurationsindata. Att exportera http_proxy för curl upprättar inte http.proxyHost inuti en Java URLConnection-klient.

För en JVM där de deltagande HTTP-anslutningarna ska använda en fast rutt kan startargument göra valet explicit:

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

Slutpunkten är illustrativ; offentliga HTTP-kandidater från HTTP-proxylistan kan fylla dessa fält när programmet tillåter den rutten. Värdegenheten tar ett värdnamn eller en IP-adress, och porten anges separat. Det är inte en fullständig proxy-URL.

Autentisering och kringgåenderegler behöver egen konfiguration. Dra inte slutsatsen att en odokumenterad http.proxyPassword-egenskap fungerar bara för att ett gammalt exempel innehåller den. Konsultera det dokumenterade autentiserings-API:et och nätverksegenskaperna för din JDK.

Detta gäller deltagande Java-nätverksvägar. Ett bibliotek med en självständigt konfigurerad HTTP-klient kan följa en annan policy. Identifiera den klienten innan du lägger tid på att översätta varje shellvariabel till ett JVM-argument.

Relaterade artiklar