內部邀請碼: C8E245J (不寫邀請碼,沒有現金送)
國內私募機構九鼎控股打造,九鼎投資是在全國股份轉讓系統掛牌的公眾公司,股票代碼為430719,為“中國PE第一股”,市值超1000億元。
今天安裝了公司的數字證書,用 myeclipse 調試程序時,出現錯誤:
解決PKIX:unable to find valid certification path to requested target 的問題
根據錯誤消息看,貌似是找不到數字證書。可奇怪的是數字證書我已經導入了啊,為何還出現這樣的情況了。可能的原因:
一、公鑰是否正確?是否是網站出來的公鑰?
如何從網站導出公鑰,參見: http://blog.csdn.net/faye0412/article/details/6883879
二、如何導入的公鑰?導入到哪兒呢?
仔細想想看:使用如下命令導入公鑰:
keytool -import -file d:\Server.cer -keystore "%JAVA_HOME%\jre\lib\security\cacerts" -alias server
將公鑰導入到了 %JAVA_HOME%\jre\lib\security\cacerts 文件中。
使用如下命令可以看到結果:
keytool -list -keystore "%JAVA_HOME%\jre\lib\security\cacerts" | findstr /i server
如果看到紅色框內容,就說明的確導入成功了。
那為何 myeclipse 不承認呢?
三、環境不一致?
再想想應用程序的啟動過程,通過 myeclipse 啟動 tomcat,進行瀏覽的。而 myeclipse / tomcat 都基於 java ,而 myeclipse 有自帶的 jdk ,啟動時會不會是使用了 myeclipse 的jdk,而不是 %JAVA_HOME% 目錄下的呢?檢查之:
myeclipse -> windows -> preferences -> tomcat -> jdk
看到下拉框后,我恍然大悟,哈哈,myeclipse 啟動tomcat 時,用的是 Sun JDK 1.6.0_13 ,而不是 jdk1.6.0_43(%JAVA_HOME% 指向的jdk目錄)
ok,找到問題就好說了,果斷選擇 jdk1.6._43 ,重啟 tomcat
bingo!