进入到我这篇博客之前,相信大家都看过这篇文章啦,彻底解决unable to find valid certification path to requested target 也相信大家都把里面的方法使了一遍,然而都没有解决这个让人头疼的问题。希望我提供的方法能让你不在头疼。
由于在帮忙解决有些小伙伴这个问题时,直接使用第二步方法有些也是可以的。因此你可以尝试先不做第一步更换jdk的处理,直接用第二步的方法先试试。
csdn 文章地址(讲的更详细):https://blog.csdn.net/da_caoyuan/article/details/104343058
第一步:
首先我是把Android studio 自带的jdk替换为了java官方的jdk。如图:
第二步:
工程下的 build.gradle 添加阿里云的镜像地址:
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
//如果上面的阿里云镜像不行,就尝试用下面的的试试。如果用下面的,上面的就注释掉。
//maven { url 'https://maven.aliyun.com/repository/public' }
google()
jcenter()
}
ps:建议放到 google() 的前面。注意 build.gradle 文件下的2个 repositories 都要添加。
到这里来你在组建一下工程,看看是否还报这样的错误。
当你不在报错的时候,你尝试打一下 release 正式的包。可能你还会出现 unable to find valid certification path to requested target 这样的报错。这时:
第三步:
在你项目的build.gradle中 android 的闭包中添加如下代码:
lintOptions {
// true 所有正式版构建执行规则生成崩溃的lint检查,如果有崩溃问题将停止构建
checkReleaseBuilds false
//true 错误发生后停止构建
abortOnError false
}
最后再试试。希望能解决你的问题!这里我也说一下我遇到这种问题的场景,我是公司的网络没有出现过这样的错误,在自己家里的网络就报这样的错误。用的 as 的版本是3.5.3。至于为什么会出现这样的问题,网上很多博客也都有说明,我也不再这里废话啦。
如果能解决你的问题,希望给点个赞啦,谢谢!
如果这样还不能解决你的问题,请加入qq群聊:1030290354 。这里会有更多的人给你提供解决方案。