idea+maven学习必踩的坑--JDK安全证书导入

愁死了怎么办?搞了一通证书导入,但是死活就没有导入成功,深夜4点我静心研究,原来踩了大坑
1)选择证书,证书是同事导出来的cer文件
2)将cer文件复制到%JAVA_HOME%\jre\bin文件夹下,其实可以不用,但是为了导入时少出错,我们将cer文件放在keytool.exe同目录下
3)cmd 命令行导入,admin权限打开cmd
4) 使用如下命令导入
keytool -importcert -v -trustcacerts -alias nexus -file nexus.cer -storepass changeit -keystore “C:\Program Files\Java\jdk1.8.0_241\jre\lib\security\cacerts”
做以下说明 import命令已经改为importcert,你用的时候可以用keytool -help来查看下是否有改动
-file 后面是 cer文件目录,因和keytool同目录直接输入.cer文件,你倒出来的文件可能是其他名字可以忽视
-storepass 是默认密码 changeit,我们也不做修改
-keystore 后面跟的是你想保存的生成密钥的目录,根据你的需要,但是此处需要注意目录最后必须精确到和cer文件同名但是文件属性为keystore的文件,该目录下不存在这个文件也没有关系,会自动生成,但是注意有坑。
终于搞定了这行命令行,我遇到了以下报错,均是没注意到以上两点
1)keytool error: java.lang.Exception: Keystore file exists, but is empty: C:\Program Files\Java\jdk1.8.0_241\jre\lib\security\cacert
java.lang.Exception: Keystore file exists, but is empty: C:\Program Files\Java\jdk1.8.0_241\jre\lib\security\cacerts
在这里插入图片描述
2)Illegal option: Files\Java\jdk1.8.0_241/jre/lib/security/cacerts
idea+maven学习必踩的坑--JDK安全证书导入_第1张图片
3)cmd 下可能找不到带空格的目录,可以在目录上加上双引号

4)我导入的产品是更新了JAVA自带的密钥,因此文件名不能改,-keystore "C:\Program Files\Java\jdk1.8.0_241\jre\lib\security\cacerts,只能覆盖原来的文件名

完美,熬了一夜终于看到了一项成功
idea+maven学习必踩的坑--JDK安全证书导入_第2张图片

你可能感兴趣的:(idea+maven学习必踩的坑--JDK安全证书导入)