2016-09-08 5 views
0

실행하는 동안 SSL 주소에 연결하는 응용 프로그램을 작성했습니다. cmd의 다음 줄을 사용하여 키 저장소에 인증서를 추가했습니다 : keytool -import -alias cddis-caster.gsfc.nasa.gov -keystore "C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\security\cacerts" -file "D:\projects\Certificates\cddis-caster.gsfc.nasa.gov.crt". 응용 프로그램이 원활하게 실행되고 있습니다.ssl 연결에 대한 인증서가 cmd에서 인식되지 않습니다

다음은 cmd에서 실행할 수있는 jar 파일을 만들었습니다. cmd에서 응용 프로그램을 실행하는 동안 SSL 주소에 연결하는 동안 오류가 발생하면 인증서를 찾을 수 없다는 메시지가 나타납니다. javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

SSL이 아닌 주소로 연결하는 동안 정상적으로 실행됩니다.

이 문제를 어떻게 해결할 수 있습니까? 실행 가능한 jar 파일을 실행하려면 어디에서 인증서를 배치해야합니까? 도움이 될 것입니다. 고맙습니다.

+0

(1) JDK "private"JRE를 실행 하시겠습니까? 아니면 'java'명령을 제공하고 있습니까? 후자는 일반적으로 'public'JRE를 사용합니다. jre는 '\ Program Files [ (x86)] \ java \ jre1.8.0_nn' 그리고'\ ProgramData \ Oracle \ java \ javapath'에서 symlink를 통해 (PATH에서) 호출됩니다. (2) 앱이 JVM detault truststore 'lib/security/cacerts'입니까?) 명시 적으로 그 파일을 사용하고 있습니까? –

답변

0

문제가 해결되었습니다. 나는 This 링크를 사용했으며, 매력처럼 작동합니다.

관련 문제