Setzt d'Inpute vum Downloader op säin ProcessBuilder:

var command = new ProcessBuilder(
    "/usr/bin/curl", "--fail", "--max-time", "30",
    "https://downloads.example/data.csv");
var environment = command.environment();
environment.put("http_proxy", "http://proxy.example:8080");
environment.put("https_proxy", "http://proxy.example:8080");
command.inheritIO();
Process child = command.start();

D'Ëmweltkaart fänkt als Kopie vun der Ëmwelt vum Java-Prozess un. Dës Ännerunge gëllen fir Prozesser, déi dëse Builder méi spéit start; si aktualiséieren net den Eltereterminal oder en anere Builder. Kontrolléiert déi ierflech Bypass-Variabelen, wann curl nach ëmmer direkt geet. Fir eng ëffentlech HTTP-Downloadroute, wielt den Endpunkt vum Kand aus der Lëscht vun HTTP-Proxye.

D'Beispill ierft d'Standardstréim. Waart op d'Kand, behandelt säin Ausgangsstatus a behält d'Annulatiounspolitik vun der Applikatioun no start().

D'Java-Systemeigenschaft http.proxyHost gehéiert zum deelhuelende Java-Netzwierkcode. Curl benotzt seng eege Optiounen a seng eege Ëmwelt. Wann d'Kand en anert Java-Programm ass, gitt him déi noutwendeg -D-Argumenter virun der Haaptklass oder -jar; eng Ëmweltvariabel déi just http.proxyHost heescht, setzt déi Eegenschaft net.

Ähnlech Artikelen