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 деп аталатын орта айнымалысы бұл қасиетті орнатпайды.