sbt può aver bisogno della rete prima che la tua definizione di build abbia fatto qualcosa di utile. Il suo launcher deve ottenere componenti, e la build può in seguito contattare i repository tramite librerie aggiuntive. Un'impostazione proxy nascosta dentro un task può arrivare troppo tardi per il primo download.

Parti dalla JVM che esegue effettivamente sbt. Per un launcher che legge il .jvmopts del progetto, le proprietà di base dell'endpoint possono essere:

-Dhttp.proxyHost=proxy.example.net
-Dhttp.proxyPort=8080
-Dhttps.proxyHost=proxy.example.net
-Dhttps.proxyPort=8080

Questi valori separano un nome host e una porta; non sono URL proxy completi. Per i download consentiti da repository pubblici, il elenco dei proxy HTTP fornisce valori candidati per quei campi. Un repository HTTPS resta raggiungibile tramite un proxy HTTP usando CONNECT.

Nota quale download è fallito

Il bootstrap del launcher, i componenti dello strumento di build, i plugin e le dipendenze non usano necessariamente lo stesso livello di configurazione. Individua l'URL e la fase che hanno fallito prima di modificare le dichiarazioni dei repository.

La scelta del repository risponde a dove si ottengono gli artefatti. La configurazione del proxy risponde a come un client di rete raggiunge quell'endpoint. Sostituire un repository con uno specchio interno può essere una scelta supportata a parte, ma non configura un proxy di rete per tutte le altre destinazioni.

L'autenticazione del proxy è un altro controllo. Non dare per scontato che ogni downloader Java tratti una proprietà proxyUser arbitraria come un meccanismo di accesso supportato. Usa la disposizione di autenticazione documentata per il launcher installato e il resolver pertinente.

Infine, controlla l'ambiente effettivo del launcher invece di copiare una variabile da una guida per un altro runner. Un errore DNS, un repository non disponibile e un accesso proxy rifiutato possono tutti comparire durante la risoluzione delle dipendenze, ma richiedono correzioni molto diverse.

Articoli correlati