Configura as entradas do descargador no seu 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();

O mapa de contorno comeza como unha copia do contorno do proceso Java. Estes cambios aplícanse a procesos que este construtor inicie despois; non actualizan o terminal pai nin outro construtor. Comproba as variables de omisión herdadas se curl segue indo directo. Para unha ruta de descarga HTTP pública, escolle o punto final do fillo na lista de proxys HTTP.

O exemplo herda os fluxos estándar. Espera o fillo, xestiona o seu estado de saída e conserva a política de cancelación da aplicación despois de start().

A propiedade de sistema http.proxyHost de Java pertence ao código de rede Java que participa. Curl usa as súas propias opcións e o seu propio contorno. Se o fillo é outro programa Java, pásalle os argumentos -D que necesita antes da clase principal ou -jar; unha variable de contorno que só se chame http.proxyHost non define esa propiedade.

Artigos relacionados