导入证书到jvm
通过curl可以获取token
curl --cacert Root_CA_cert.txt -X POST -d "client_id=xxxx&client_secret=xxx" https://aip.test.com/access-token
这样可以正常获取到token,那java要怎样才能获取到呢,开始时java会报如下错误
导致上面错误是由于没有将root 证书导入到jvm
将证书导入到jvm
#此命令为参考,根据自己情况做更改
keytool -import -alias taobao -file taobao.cer -storepass changeit -keystore %JAVA_HOME%/jre/lib/security/cacerts
参数说明
解释说明:
1、taobao 是可以自己修改的名称, taobao.cer 是导出的证书,同样,这里的证书名字也是随便取的,但前提是保证将C:\Program Files\Java\jdk1.6.0_24\jre\lib\security目录的cacerts文件内之前没有导入同名证书,就是要保证你将要导入的证书名称唯一性。
2、changeit 是密码, java默认的。
3、keytool是jdk中bin目录的一个exe文件,是jdk默认自带的,在我电脑的目录是:C:\Program Files\Java\jdk1.6.0_24\jre\bin\keytool.exe
4、%JAVA_HOME%/jre/lib/security/cacerts 这个路径中%JAVA_HOME%/jre/lib/security/是路径,cacerts是文件(即将要把证书导入到其中的文件)。当然要确保你已经配置过java_home环境变量,我的java_home环境变量为:C:\Program Files\Java\jdk1.6.0_24
5、其他保持不变。
6、如果提示:”是否信任此证书? [否]:” ,那么请输入”y”。
当出现:”证书已添加到密钥库中 [正在存储cacerts]“的时候,那么恭喜你已经添加成功。
注意:如果提示找不到指定文件,那么有可能是路径错了,我这里是先执行cd C:\Program Files\Java\jdk1.6.0_24\jre\bin\ 来到keytool文所在目录执行以上命令。
以后更新时,先删除原来的证书,然后导入新的证书 。
下面是一些常用命令:
//查看cacerts中的证书列表:
keytool -list -keystore “%JAVA_HOME%/jre/lib/security/cacerts” -storepass changeit
//删除cacerts中指定名称的证书:
keytool -delete -alias taobao -keystore “%JAVA_HOME%/jre/lib/security/cacerts” -storepass changeit
//导入指定证书到cacerts:
keytool -import -alias taobao -file taobao.cer -keystore “%JAVA_HOME%/jre/lib/security/cacerts” -storepass changeit -trustcacerts
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!