问题描述
|
我尚未设置
java_home
,我需要知道c:\\Windows\\System32\\java.exe
文件所指向的位置。
我的系统上有几个JDK和JRE。
原因是我尝试通过SSL连接到某些服务器,并且在将证书导出到适当的JRE中后可以在Netbeans中工作(可以通过Netbeans选项看到)
但是,当我通过命令行连接时,出现SSL错误。我尝试将证书添加到我的所有JRE中,但无法正常使用。我认为此Windows快捷方式指向我忽略的某个地方是一个问题。
有没有一种简单的方法可以找出哪个JRE是默认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使用的存储与than5ѭ不同。
希望对此有所帮助。
解决方法
我找到了解决方案。感谢这个链接。
它提到了密钥库的位置。令人惊讶的是,它花了一些谷歌搜索。
位置是
jre6\\lib\\security\\cacerts
因此我必须使用以下命令来导入证书:
keytool.exe -import -alias myalias -file mycertfile -keystore \"c:\\Program Files\\Java\\jre6\\lib\\security\\cacerts\"
,您应该从Java控制面板的Java选项卡中查看\“ Java应用程序运行时设置\”。
http://download.oracle.com/javase/1.5.0/docs/guide/deployment/deployment-guide/jcp.html
在此选项卡中,您可以禁用/启用任何正在运行的版本,并且可以看到当前的系统JVM版本是什么。