Java аркылуу иштетилген curl процессине анын прокси өзгөрмөлөрүн бериңиз
Жүктөөчү үчүн ProcessBuilder.environment орнотуңуз; JVMдин -D прокси касиеттери curl опцияларына айланбайт.
Жүктөөчүнүн киргизүүлөрүн анын 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 деп аталган чөйрө өзгөрмөсү ал касиетти орнотпойт.