解决Android Studio创建项目时gradle同步失败“unable to find valid certification path to requested target”

软件版本

  • Android Studio 3.5.1
  • AndroidSDK 29(第一次打开AS默认下载的)
  • gradle 5.4.1 插件3.5.1

问题

下载好SDK创建新项目时,build页面显示gradle同步失败
没有截图,图片引自

https://blog.****.net/m0_37292262/article/details/81395369

解决Android Studio创建项目时gradle同步失败“unable to find valid certification path to requested target”
通过日志发现gradle已经下载成功了,但是有一些资源(pom文件)因为证书问题获取不到。
我使用的是阿里云的仓库
maven { url "http://maven.aliyun.com/nexus/content/groups/public/"}
之后依然报出了该仓库上的资源无法get
解决Android Studio创建项目时gradle同步失败“unable to find valid certification path to requested target”
然后——在我某天杀毒时,电脑管家告诉我SSL协议未开启,正好想起有一个报错是Caused by: 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,在设置-高级-打开代理设置-高级-使用SSL3.0,结果成功了。(之前还下载了阿里云的证书添加到浏览器中,不过这个操作并没有同步成功,或许对后面的结果有影响,我并没有去试验。)
解决Android Studio创建项目时gradle同步失败“unable to find valid certification path to requested target”
解决Android Studio创建项目时gradle同步失败“unable to find valid certification path to requested target”
解决Android Studio创建项目时gradle同步失败“unable to find valid certification path to requested target”
这是我自己的界面
解决Android Studio创建项目时gradle同步失败“unable to find valid certification path to requested target”

总结

总结一些整个过程

  • 安装AS 3.5.1一路next,安装完成后打开AS有一个提示no SDK on list之类的,略过他,选择standard模式继续安装(这样AS和SDK都在C盘),最后提示SDK和Intel HAXM updated successfully。创建一个空项目,开始同步,并下载gradle5.4.1和插件。
  • 掉进坑里后,经历过重装AS,使用其他仓库,*下载,使用代理,导入证书到jdk,使用本地gradle,修改gradle路径为更详细的(都是网上找的方法,都没有解决)
  • 关于证书的导入,我导入时jdk目录不允许访问,就没有成功。
  • 最后整个状态是:gradle的设置保持原样,即使用它推荐的目录,jdk是本地的jdk1.8,使用了代理(这个可能无关紧要,我当时忘记删掉了)
    http://mirrors.neusoft.edu.cn解决Android Studio创建项目时gradle同步失败“unable to find valid certification path to requested target”

关于SSL3.0

我并不了解这个协议,谷歌浏览器是默认关闭SSL3.0的。
网上的说法是:

SSL/TLS 系列中有五种协议:SSL v2,SSL v3,TLS v1.0,TLS v1.1和TLS v1.2:
SSL v2 是不安全的,不能使用。
当与 HTTP(POODLE 攻击)一起使用时,SSL v3 是不安全的,当与其他协议一起使用时,SSL v3 是弱的。它也是过时的,不应该被使用。

不知道打开SSL3.0对日常上网会有什么影响。