我安装了最新版本的Android Studio。我有jdk 8已经安装了。当我打开android studio时,我得到了下面的错误。
Unable to resolve dependency for ':app@debugUnitTest/compileClasspath': Could not resolve com.android.support:appcompat-v7:26.1.0.
Could not resolve com.android.support:appcompat-v7:26.1.0.
Required by:
project :app
> Could not resolve com.android.support:appcompat-v7:26.1.0.
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/support/appcompat-v7/26.1.0/appcompat-v7-26.1.0.pom'.
> Could not GET 'https://dl.google.com/dl/android/maven2/com/android/support/appcompat-v7/26.1.0/appcompat-v7-26.1.0.pom'.
> sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
> PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
> unable to find valid certification path to requested target
字符串
因此,我删除了JDK 8并安装了JDK 9,添加了环境变量(在Windows 10中)。然后我重新启动我的系统,并启动Android Studio,我仍然得到以上错误.我还补充了
repositories {
maven { url "https://maven.google.com" }
}
型
gradle脚本。但我还是犯了同样的错误。如何修复此错误?
8条答案
按热度按时间643ylb081#
以下步骤可能有所帮助:
1.向密钥库添加证书-
将某些认证从Android Studio的cacerts导入Android Studio JDK cacerts。
Android Studio的cacerts可能位于
字符串
我使用了下面的import命令。
型
2.将修改后的cacert路径添加到gradle.properties-
型
参考:https://www.cresco.co.jp/blog/entry/2014//
lnlaulya2#
在项目级分级器中按以下内容修改
字符串
然后,从应用级别gradle中删除appcompat-v7:26.1.0依赖项,然后下一步转到Android Studio文件>项目结构>应用>依赖项>点击+ >库依赖项>添加依赖项,然后确定。
你也可以尝试点击同步项目与gradle文件
x1c 0d1x的数据
欲了解更多,请点击下方链接
https://developer.android.com/studio/build/gradle-plugin-3-0-0.html
编辑
我认为你的问题是不同的,所以请与下面的链接,
"PKIX path building failed" and "unable to find valid certification path to requested target"的
Resolving javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed Error?的
https://github.com/appscode-ci/cibox/issues/16的
https://www.mkyong.com/webservices/jax-ws/suncertpathbuilderexception-unable-to-find-valid-certification-path-to-requested-target/的
jei2mxaa3#
Java不信任用于下载库的链接。在继续步骤2之前,请尝试步骤1。
1.检查您的互联网是否在任何防火墙后面,您的公司互联网可能会阻止您试图访问的网站。将您的PC连接到移动的互联网并尝试构建。
hpcdzsge4#
您可以尝试将Gradle Package 器的路径更改为Eclipse > Preferences > Gradle。选择本地安装目录而不是Gradle Wrapper。
6yoyoihd5#
我安装了
plugins.gradle.org
的密钥,并能够下载以下内容,https://plugins.gradle.org/m2/org/springframework/boot/spring-boot-gradle-plugin/2.4.1/
但是,未能下载
https://plugins.gradle.org/m2/org/springframework/boot/spring-boot-gradle-plugin/2.4.1/spring-boot-gradle-plugin-2.4.1.module
,我的浏览器能够下载。花了一天的时间才发现,网址正在被重定向,
spring-boot-gradle-plugin-2.4.1.module
https://jcenter.bintray.com/org/springframework/boot/spring-boot-gradle-plugin/2.4.1/spring-boot-gradle-plugin-2.4.1.module
添加
jcenter.bintray.com
到我的密钥库,它工作了。扭曲的世界bakd9h0s6#
TL;DR
有已知的JDK带有错误的HTTP客户端,在TLS v1.3期间(由许多服务器强制执行)失败,并伴有这种误导性异常。
将JDK更新为最新版本。
很长的故事
JDK版本可能是原因。随着时间的推移和互联网的发展,服务器开始缩小传输协议集的范围。有些可能只提供TLS v1.2和TLS v1.3。HTTP客户端(包括Java中的客户端)可能存在漏洞。
我的经验是,信任库和证书是可以的,但作为Java HTTP客户端从OpenJDK 11.0.0(从官方OpenJDK网站下载)在TLS v1.3中有一个bug,它总是以exception
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
结束。只是抛出了异常。不是真实的的问题。解决方案是从我不得不使用的主要版本中获取最新的JDK。它在11.0.3中得到了修复,在撰写本文时,11.0.15已经可用。
jhkqcmku7#
我收到这个错误是因为一个带有依赖关系的新克隆的仓库在另一个仓库中成功使用,所以我知道这不是密钥证书问题。最终,我能够通过更改intelliJ中的gradle设置,转到
Preferences ->Gradle -> Gradle JVM
并将其设置为我想要使用的正确JDK来解决这个问题(我想要java 1.8,但它被设置为阿苏尔15)w7t8yxp58#
尝试替换为
字符串