[精讚] [會員登入]
462

更新java版本後一定要做的事情

how to deal with PKIX path building failed issue after upgrade java sdk version in IDE

分享此文連結 //n.sfs.tw/14820

分享連結 更新java版本後一定要做的事情@外行中的外行
(文章歡迎轉載,務必尊重版權註明連結來源)
2020-11-23 21:58:55 最後編修
2020-11-20 23:34:34 By jung
 

每次編譯器更新java sdk版本後,例如這次我從openjdk11.0.5升級到11.0.8

就會出現:javax.net.ssl.SSLHandshakeException: PKIX path building failed

編譯或執行時出錯

找到解法如下:

1.先下載該網站公開憑證

例如我想連到 google.com 透過 HTTPS執行程式或下載

使用openssl先產生該網站的crt憑證檔案

openssl s_client -connect google.com:443 -servername google.com:443 < /dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > public.crt

2.再匯到jvm的cacert 中,這邊一定要找到jdk版本中keytool的絕對路徑

例如:/Library/Java/JavaVirtualMachines/adoptopenjdk-11-openj9.jdk/Contents/Home/bin/keytool

<JAVA_HOME>/bin/keytool -import -alias <server_name> -keystore <JAVA_HOME>/jre/lib/security/cacerts -file public.crt

 

這樣就可以解決了

參考文件

https://confluence.atlassian.com/kb/how-to-import-a-public-ssl-certificate-into-a-jvm-867025849.html

END

你可能感興趣的文章

在IDEA從JDK8升級到JDK11遇到的奇怪問題 在IDEA遇到的JAVA11函式庫引入問題

specific instructions to create a maven archetype from local existing project. Generate an archetype from the project

如何用git log功能產生有固定格式的commit紀錄 how to create a git commit history log file with custom format

testing gitlab and jenkins CI/CD on docker-1 在docker架設gitlab, jenkins 測試CI/CD pipeline第一章

使用letsEncrypt替換docker容器內的nginx https憑證 using cerbot for nginx on oracle linux 9

using google Appscript to send messages through LINE NOTIFY 使用google app script傳送LINE NOTIFY

我有話要說

>>

限制:留言最高字數1000字。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

回應 修正pom.xml,

縣市端IdP新增自訂首頁內容功能 合併本部主程式,手動於mongo內新增管理使用者資料

新增IDP程式使用google防機器人的驗證功能 身份認證程式新增google防機器人v2

在windows server建立radius服務使用active directory帳號驗證 setup windows server to add radius service using active directory accounts for authentication

在apache http server停用TLS 1.0/1.1 and SSL 2.0/3.0 How to disable outdated versions of SSL/TLS on Apache