17370845950

记录一次 Windows Android Studio 异常

第78次推文

LZ-Says

2025,贪财好色,一身正气。

前言

今天,突然在CSDN App上看到一条私信:

想了想这个no mouble的问题,真是简单,同步一下就行了~

鸡老大,看我分分钟搞定~

炫耀的代价,就是被啪啪打脸,翻车了。特意记录一下。

开始修车~

小伙子发来一张异常图片,我们一起来看看:

我绞尽脑汁想了半天,从没遇到过这个问题,到底是什么鬼证书的事儿。我从Windows换到Mac OS,Android Studio倒是一直没出现过这种鬼问题。

怎么办,去找鸡老大?

嗯嗯,想都不想就去找鸡老大,容易被怼。顺手打开stack overflow这个万能的神器,找到了如下解决方案:

解决javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed错误?我特意截取了关键解决方法,方便某天神奇地打不开就尴尬了,其实还是为了我这个懒人,哇咔咔~

来来来,开始搞~

远程连接了小伙子的电脑,发现是连接jcenter下载相关资源包时出现异常,操作就变得简单了很多~

步骤1:打开jcenter官网,下载其证书

点击证书进入详情:

点击「复制到文件…」,这里很多都是一键式点点点,这里唯一需要注意的是,导出文件格式需要设置为Base64编码,如下图所示:

步骤2:介绍两个工具

Android Studio提供的证书管理工具:

JDK自带的证书文件:

步骤3:将下载的证书导入JDK的cacerts

这里需要特别注意,Windows打开CMD工具必须以管理员身份运行!!!

这里需要特别注意,Windows打开CMD工具必须以管理员身份运行!!!

这里需要特别注意,Windows打开CMD工具必须以管理员身份运行!!!

否则最后会提示cacerts拒绝访问。

输入以下命令行:

keytool -import -alias [证书别名] -keystore [JDK 中 cacerts 目录地址] -file [下载网址证书本地存放地址]

密钥口令:changeit

操作示意图如下:

最后会提示「是否信任此证书?」输入y/Y即可。

随后清空Android Studio缓存并重启即可。

番外篇

更新证书保险点需要三步走:

查看证书信息:keytool -list -keystore [JDK 中 cacerts 目录地址] 删除要更新的证书:keytool -delete -alias [证书别名] -keystore [JDK 中 cacerts 目录地址] 更新证书:keytool -import -alias [证书别名] -keystore [JDK 中 cacerts 目录地址] -file [下载网址证书本地存放地址] 这里附上详细操作步骤:

C:\Program Files\Android\Android Studio\jre\bin>keytool -list -keystore "C:\Program Files\Java\jdk1.8.0_91\jre\lib\security\cacerts"
输入密钥库口令:
密钥库类型: jks
密钥库提供方: SUN
您的密钥库包含 102 个条目...
证书指纹 (SHA1): 74:20:74:41:72:9C:DD:92:EC:79:31:D8:23:10:8D:C2:81:92:E2:BB
as, 2025-2-17, trustedCertEntry, // 之前导入的证书...
C:\Program Files\Android\Android Studio\jre\bin>keytool -import -alias as -keystore "C:\Program Files\Java\jdk1.8.0_91\jre\lib\security\cacerts" -file C:\Users\86177\Downloads\as.cer
输入密钥库口令:
keytool 错误: java.lang.Exception: 证书未导入, 别名  已经存在
C:\Program Files\Android\Android Studio\jre\bin>keytool -delete -alias as -keystore "C:\Program Files\Java\jdk1.8.0_91\jre\lib\security\cacerts"
输入密钥库口令:
C:\Program Files\Android\Android Studio\jre\bin>keytool -import -alias as -keystore "C:\Program Files\Java\jdk1.8.0_91\jre\lib\security\cacerts" -file C:\Users\86177\Downloads\as.cer
输入密钥库口令:
所有者: CN=*.bintray.com
发布者: CN=GeoTrust RSA CA 2018, OU=www.digicert.com, O=DigiCert Inc, C=US
序列号: e6e
有效期为 Thu Sep 26 08:00:00 GMT+08:00 2019 至 Tue Nov 09 20:00:00 GMT+08:00 2025

参考资料

解决javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed错误? Java#PKIX path building failed 欢迎各位关注

不定期发布