이 두 명령은 Java 런처에 동일한 구성을 제공하지 않습니다. HTTP 프록시의 호스트와 포트를 사용하세요. HTTP 프록시 목록은 허용된 공용 경로의 후보를 제공합니다.

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

첫 번째에서는 런처가 시스템 속성 옵션을 받습니다. 두 번째에서는 app.jar 뒤의 토큰이 애플리케이션 인수가 됩니다. 애플리케이션이 의도적으로 이를 구문 분석하지 않는 한 JVM의 프록시 속성을 설정하지 않습니다.

-jar 대신 기본 클래스를 지정할 때도 같은 경계가 적용됩니다. JVM 옵션은 클래스 이름 앞에, 애플리케이션별 인수는 그 뒤에 두세요.

IDE, 서비스 래퍼 또는 실행 스크립트가 생성하는 실제 시작 명령을 확인하세요. “program arguments”라는 레이블이 붙은 필드는 VM 옵션용 필드와 다를 수 있습니다.

올바른 위치는 속성만 제공합니다. HTTP 클라이언트는 여전히 그 Java 네트워킹 구성을 사용해야 합니다. Apache HttpClient 5의 경우 클라이언트가 시스템 속성을 사용하도록 설정하세요. 프록시 인증에는 자체적으로 지원되는 인터페이스가 필요합니다.

관련 글