c: WindowsSystem32java.exe默认证书存储位置



我还没有设置java_home,我需要知道c:WindowsSystem32java.exe文件指向哪里。我的系统上有几个JDK和JRE。

原因是我试图通过SSL连接到某个服务器,在我将证书导出到相应的JRE(我可以通过Netbeans选项看到)后,它在Netbeans中工作

但是,当我通过命令行连接时,我会收到一个SSL错误。我尝试将证书添加到我的所有JRE中,但无法使其工作。我认为这个Windows快捷方式指向我忽略的某个地方是个问题。

有没有一种简单的方法可以找出哪个JRE是默认的JRE?

[EDIT]或者我需要在默认JRE中找到默认密钥库的位置。

[编辑]我的问题详述如下:

以下两个给出SSL错误:

"c:Program FilesJavajre6binjava.exe" -cp myjar.jar mypackage.myclass 
"c:Program Files (x86)Javajre6binjava.exe" -cp myjar.jar mypackage.myclass 

以下两个工作

"c:Program FilesJavajdk1.6.0_24binbinjava.exe" -cp myjar.jar mypackage.myclass 
"c:Program Files (x86)jdk1.6.0_24binjre6binjava.exe" -cp myjar.jar mypackage.myclass 

我已经使用所有四个命令导出了证书:

"c:Program FilesJavajdk1.6.0_24binbinkeytool.exe" -import -alias myalias -file mycertfile
"c:Program Files (x86)Javajdk1.6.0_24binbinkeytool.exe" -import -alias myalias -file mycertfile
"c:Program FilesJavajre6binbinkeytool.exe" -import -alias myalias -file mycertfile
"c:Program Files (x86)Javajre6binbinkeytool.exe" -import -alias myalias -file mycertfile

因此,keytool似乎使用了与java.exe不同的存储。

非常感谢在这方面的帮助。

我找到了解决方案。感谢此链接。

它提到了密钥库的位置。令人惊讶的是,它花了一些谷歌搜索。

位置为jre6libsecuritycacerts

所以我不得不使用以下命令导入证书:

 keytool.exe -import -alias myalias -file mycertfile -keystore "c:Program FilesJavajre6libsecuritycacerts"

您应该从Java控制面板的Java选项卡中查看"Java应用程序运行时间设置"。
http://download.oracle.com/javase/1.5.0/docs/guide/deployment/deployment-guide/jcp.html
从这个选项卡中,您可以禁用/启用任何正在运行的版本,并且您可以看到当前系统JVM版本是什么。。。

最新更新