c:\ Windows \ System32 \ java.exe默认的证书存储位置?

时间:2011-05-25 19:47:47

标签: windows-7 java

我没有设置java_home,我需要知道c:\Windows\System32\java.exe文件指向的位置。 我的系统上有几个JDK和JRE。

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

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

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

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

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

以下两个给出了SSL错误:

"c:\Program Files\Java\jre6\bin\java.exe" -cp myjar.jar mypackage.myclass 
"c:\Program Files (x86)\Java\jre6\bin\java.exe" -cp myjar.jar mypackage.myclass 

以下两项工作

"c:\Program Files\Java\jdk1.6.0_24\bin\bin\java.exe" -cp myjar.jar mypackage.myclass 
"c:\Program Files (x86)\jdk1.6.0_24\bin\jre6\bin\java.exe" -cp myjar.jar mypackage.myclass 

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

"c:\Program Files\Java\jdk1.6.0_24\bin\bin\keytool.exe" -import -alias myalias -file mycertfile
"c:\Program Files (x86)\Java\jdk1.6.0_24\bin\bin\keytool.exe" -import -alias myalias -file mycertfile
"c:\Program Files\Java\jre6\bin\bin\keytool.exe" -import -alias myalias -file mycertfile
"c:\Program Files (x86)\Java\jre6\bin\bin\keytool.exe" -import -alias myalias -file mycertfile

因此,keytool似乎使用与java.exe不同的商店。

希望得到一些帮助。

2 个答案:

答案 0 :(得分:6)

我找到了解决方案。感谢this link

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

位置为jre6\lib\security\cacerts

所以我必须使用以下命令导入证书:

 keytool.exe -import -alias myalias -file mycertfile -keystore "c:\Program Files\Java\jre6\lib\security\cacerts"

答案 1 :(得分:1)

您应该从Java控制面板的Java选项卡中查看“Java Application Runtimes Setting”。
http://download.oracle.com/javase/1.5.0/docs/guide/deployment/deployment-guide/jcp.html
在此选项卡中,您可以禁用/启用任何正在运行的版本,您可以看到当前系统JVM版本是什么......