Java-Proxy-Flags vor die Hauptklasse setzen
Übergeben Sie Proxy-Systemeigenschaften an den Java-Launcher, statt sie versehentlich als Anwendungsargumente auszuliefern.
Diese beiden Befehle geben dem Java-Launcher nicht dieselbe Konfiguration. Verwenden Sie Host und Port Ihres HTTP-Proxys; die HTTP-Proxy-Liste bietet Kandidaten für zulässige öffentliche Routen:
java -Dhttp.proxyHost=proxy.example.net -Dhttp.proxyPort=8080 -jar app.jar
java -jar app.jar -Dhttp.proxyHost=proxy.example.net -Dhttp.proxyPort=8080
Beim ersten erhält der Launcher Optionen für Systemeigenschaften. Beim zweiten werden die Token nach app.jar zu Anwendungsargumenten. Sofern die Anwendung sie nicht bewusst auswertet, setzen sie die Proxy-Eigenschaften der JVM nicht.
Dieselbe Grenze gilt, wenn statt -jar eine Hauptklasse angegeben wird. Setzen Sie JVM-Optionen vor den Klassennamen und anwendungsspezifische Argumente danach.
Prüfen Sie den tatsächlichen Startbefehl, den eine IDE, ein Dienst-Wrapper oder ein Startskript erzeugt. Dessen Feld mit der Bezeichnung „program arguments“ kann sich vom Feld für VM-Optionen unterscheiden.
Die richtige Platzierung liefert nur die Eigenschaft. Der HTTP-Client muss diese Java-Netzwerkkonfiguration weiterhin verwenden. Bei Apache HttpClient 5 aktivieren Sie Systemeigenschaften für den Client. Die Proxy-Authentifizierung benötigt eine eigene unterstützte Schnittstelle.