Java 프로젝트에서 "PKIX path building failed" and "unable to find valid certification path to requested target 에러가 발생하는 경우
상황
- Java 기반 (JDK) 프로젝트 실행 시 소켓 연결 (크롤링 등 모든 네트워크 통신 포함) 시
PKIX path building failed" and "unable to find valid certification path to requested target 에러가 발생
- 회사 VPN 이 켜져 있는 경우에만 발생하는 것으로 보아 VPN 이 사용하는 Certificates 가 등록되지 않는 인증서라서 발생하는 것으로 추측
해결
1. 브라우저에서 인증서 추출


2. 현재 사용중인 jdk 에 브라우저에서 추출한 인증서 추가
ex) 현재 jdk 경로와 추출한 인증서 경로
- jdk 경로:
/Library/Java/JavaVirtualMachines/openjdk-11.jdk/Contents/Home
- 인증서 경로:
~/tmp/Zscaler\ Root\ CA.cer
아래 명령어로 인증서 추가
keytool -import -alias zscaler -keystore /Library/Java/JavaVirtualMachines/openjdk-11.jdk/Contents/Home/lib/security/cacerts -file ~/tmp/Zscaler\ Root\ CA.cer
위 명령어를 실행하면 비밀번호를 물어보는데, 기본 비밀번호는 changeit 임

3. 재부팅 후 정상 동작 확인
참고