Android studio解决 sun.security.validator.ValidatorException PKIX path building failed

Android studio解决 sun.security.validator.ValidatorException: PKIX path building failed

在使用android studio开发Android, sycn项目时遇到了如下错误

错误信息如下:

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

原因:

客户端对服务器的证书认证的时候出错了,解决方案把服务器证书加到信任证书库里面


解决方案:导入证书到本地证书库

首先从出现证书认证异常的网站获取它的证书,我用的是阿里云的镜像所以以这个为例,点击chrome地址栏旁这个显示站点信息的按钮(每个浏览器差不多位置其实),然后点证书

在这里插入图片描述

详细信息点击复制到文件,编码选base64

在这里插入图片描述

保存为cer文件

在这里插入图片描述


如果系统变量设置了JDK路径,直接跳到命令那一步就行
如果没有,找到你Android studio目录下的jre文件夹, 注意lib中要有security这个文件夹,security里面有一个cacerts文件,否则使用命令时参数要有这个文件的路径

在这里插入图片描述

管理员身份运行cmd,cd到符合上述描述的jre文件夹的bin文件夹中(即第二个jre),执行下列命令,密钥口令输入changeit

keytool -import -alias 别名可为空 -keystore D:/xxx/cacerts -file C:/xxx/aliyun.cer
//参数 keystore 指定cacerts文件路径
//参数 file 指定证书文件的路径

在这里插入图片描述

查看是否导入成功,口令和之前一样

keytool -list -keystore

在这里插入图片描述

导入成功后再次Sync Project时就不会有这个异常了,其他解决方法还有信任所有SSL证书

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
android studio sun.security.validator.ValidatorException: PKIX path building 是一个常见的错误,通常在使用 Android Studio 进行网络请求出现。该错误表示无法验证服务器的证书。 PKIX(Public Key Infrastructure X.509)是一种公钥基础设施,用于验证和签发数字证书。当 Android Studio 发起网络请求时,它会尝试验证服务器的证书是否有效。如果证书无效或无法验证,就会抛出 sun.security.validator.ValidatorException: PKIX path building 错误。 这个错误通常有以下几种可能的原因和解决方法: 1. 证书过期或无效:检查服务器证书是否过期或无效。可以尝试使用其他工具(如浏览器)访问相同的服务器,以确认证书是否有效。 2. 证书链不完整:如果服务器证书的颁发机构(CA)证书不在 Android 系统的信任列表中,就会导致验证失败。解决方法是将 CA 证书添加到 Android Studio 的信任列表中。 3. 代理配置问题:如果你使用了代理服务器进行网络请求,可能需要在 Android Studio 中配置代理设置,以确保正确验证服务器证书。 4. 网络连接问题:有时候网络连接不稳定或存在防火墙等问题,可能导致验证失败。可以尝试使用其他网络环境或者关闭防火墙进行测试。 总结一下,sun.security.validator.ValidatorException: PKIX path building 错误通常是由于证书验证失败引起的。解决方法包括检查证书的有效性、添加缺失的 CA 证书、配置代理设置以及排除网络连接问题。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值