Поставите улазе преузимача на његов 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();

Мапа окружења почиње као копија окружења Java процеса. Ове промене важе за касније процесе које покрене овај градитељ; оне не ажурирају родитељски терминал ни други градитељ. Проверите наслеђене променљиве заобилажења ако curl и даље иде директно. За јавну HTTP руту преузимања изаберите крајњу тачку детета са листе HTTP проксија.

Пример наслеђује стандардне токове. Сачекајте дете, обрадите његов статус излаза и задржите политику отказивања апликације након start().

Java системско својство http.proxyHost припада учествујућем Java мрежном коду. Curl користи сопствене опције и окружење. Ако је дете други Java програм, доставите му потребне -D аргументе пре главне класе или -jar; променљива окружења која се само зове http.proxyHost не поставља то својство.

Повезани чланци