无法将证书导入cacerts

Neh*_*kla 11 java authentication keytool

我的要求是将maven存储库的证书导入全局密钥库.

证书文件名为maven-cacert.cer.

我使用来自下面的命令C:\Program Files\Java\jdk1.6.0_20\bin\cmd

keytool -importcert -trustcacerts -alias c:\maven-cacert.cer -file c:\maven-cacert.cer.der -keystore $JAVA_HOME\jre\lib\security\cacerts
Run Code Online (Sandbox Code Playgroud)

因为maven-cacert.cer文件在C目录中

按下输入后,它要求输入密码,并在给出密码之后说它就像

keytool error: java.io.FileNotFoundException: $JAVA_HOME\jre\lib\security\cacerts (The system cannot find the path specified
Run Code Online (Sandbox Code Playgroud)

我也试过了

   keytool -importcert -trustcacerts -alias c:\maven-cacert.cer -file c:\maven- cacert.cer.der -keystore \usr\java/jdk1.6.0_20/bin/java\jre\lib\security\cacerts
Run Code Online (Sandbox Code Playgroud)

但获得相同的输出

cacerts文件在$JAVA_HOME\jre\lib\security\目录中时,请帮助我的命令出错.

Qui*_*ncy 25

尝试使用 "%JAVA_HOME%\jre\lib\security\cacerts"

  • 尝试在它周围添加双引号 (3认同)

Ole*_*ryb 6

keytool -importcert -trustcacerts -alias mycert -file c:\ maven-cacert.cer.der -keystore“%JAVA_HOME%” \ jre \ lib \ security \ cacerts

您也有别名问题。这是名称,而不是文件。您需要引用“%JAVA_HOME%”,因为它内部有一个空格。


小智 5

使用 Bellow 命令导入 cacerts 中的证书

  1. 以管理员身份运行命令提示符
  2. cd C:\Program Files\Java\jdk1.6.0_45\jre\bin
  3. keytool -import -trustcacerts -文件“certpath\certname.cer”-alias“cert_alias”-keystore“%JAVA_HOME%”/jre/lib/security/cacerts
  4. 查看证书 keytool -list -keystore "%JAVA_HOME%"/jre/lib/security/cacerts -alias cert_alias


小智 5

如果您使用的是 OpenJDK,那么路径cacerts将不可用

"%JAVA_HOME%"/jre/lib/security/cacerts

它将在路径中可用

"%JAVA_HOME%"/lib/security/cacerts