Estos dos comandos no dan al lanzador de Java la misma configuración. Utilice el host y el puerto de su proxy HTTP; la lista de proxies HTTP ofrece candidatos para rutas públicas permitidas:

java -Dhttp.proxyHost=proxy.example.net -Dhttp.proxyPort=8080 -jar app.jar
java -jar app.jar -Dhttp.proxyHost=proxy.example.net -Dhttp.proxyPort=8080

En el primero, el lanzador recibe opciones de propiedades del sistema. En el segundo, los tokens posteriores a app.jar se convierten en argumentos de la aplicación. A menos que la aplicación los analice deliberadamente, no establecen las propiedades de proxy de la JVM.

El mismo límite se aplica al nombrar una clase principal en lugar de usar -jar. Coloque las opciones de la JVM antes del nombre de la clase y los argumentos específicos de la aplicación después.

Inspeccione el comando de inicio real que genera un IDE, un contenedor de servicio o un script de lanzamiento. Su campo etiquetado «program arguments» puede ser distinto de su campo para las opciones de la VM.

La colocación correcta solo proporciona la propiedad. El cliente HTTP todavía tiene que consumir esa configuración de red de Java. Para Apache HttpClient 5, habilite las propiedades del sistema en el cliente. La autenticación de proxy necesita su propia interfaz compatible.

Artículos relacionados