5

我需要在cacerts我的一台服务器上添加一个受信任的证书。

我可以看到它$JAVA_HOME/jre/lib/security/来自其他问题

但我还有第二个cacerts文件,两个位置是:

C:\Program Files\Java\jdk1.8.0_92\jre\lib\security

C:\Program Files\Java\jre1.8.0_92\lib\security

到目前为止,我一直在将任何证书添加到两者中,这可能是不正确的。绝对是第一个选项吗,如果是,第二个有什么用?

4

2 回答 2

2

JDK 和 JRE 是不同的软件,尽管它们是相关的。通常,JDK 包将包括 JRE(Java 运行时系统)以及一些其他工具。只要您在运行时不需要 JDK 功能(例如,您不是即时编译代码),您就可以使用其中任何一个来运行您的代码。您应该将证书放入您实际用于运行应用程序的任何一个(JDK 或 JRE)中。

于 2017-10-02T14:13:38.623 回答
1

确定这一点的最简单方法是检查您的环境变量并查看您的 JAVA_HOME 变量指向哪个变量,如果您还不知道,快速谷歌搜索会告诉您如何执行此操作。如果我不得不猜测您可能应该更改 JDK 中的 cacerts 文件,但实际检查并确定总是好的。

附带说明一下,如果您在使用 Java cacerts 文件时遇到问题,请查看此处的代码(不是我的代码):https ://www.cs.ucsb.edu/~pconrad/cs56/examples/ldap /SimpleQuery/InstallCert.java

过去我已经能够使用它来解决很多证书问题。

于 2017-10-02T14:16:27.200 回答