我安装了最新版本的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脚本。但我仍然得到同样的错误。我该如何解决这个错误?
答案 0 :(得分:4)
以下步骤可能有所帮助:
<强> 1。将证书添加到密钥库 -
从Android Studio的cacerts中将一些认证导入Android Studio JDK cacerts。
Android Studio的cacerts可能位于
{your-home-directory}/.AndroidStudio3.0/system/tasks/cacerts
我使用了以下导入命令。
$ keytool -importkeystore -v -srckeystore {src cacerts} -destkeystore {dest cacerts}
<强> 2。将修改后的cacert路径添加到gradle.properties -
systemProp.javax.net.ssl.trustStore={your-android-studio-directory}\\jre\\jre\\lib\\security\\cacerts
systemProp.javax.net.ssl.trustStorePassword=changeit
答案 1 :(得分:0)
根据以下项目级别gradle进行修改
idEncoder
然后,从app level gradle中删除appcompat-v7:26.1.0依赖项,然后再删除 转到Android Studio文件&gt;项目结构&gt; app&gt;依赖关系&gt;点击+&gt;图书馆依赖性&gt;根据您的要求添加依赖性,然后确定。
您也可以尝试使用gradle文件点击同步项目
如需了解更多信息,请访问以下链接
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"
答案 2 :(得分:0)
您的Java不信任您用于下载库的链接。 在继续执行步骤2之前,请尝试步骤1。
检查您的Internet是否在任何防火墙之后,您的公司Internet可能正在阻止您尝试访问的网站。将您的PC连接到移动互联网并尝试构建。
将证书手动添加到您的jdk证书字符串中。
sudo keytool -import -alias shibbolethnet -keystore
/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/jre/lib/security/cacerts -file <downloadedcert.cer>
答案 3 :(得分:0)
您可以尝试通过Eclipse> Preferences> Gradle更改Gradle包装器的路径。选择本地安装目录,而不是Gradle Wrapper。
答案 4 :(得分:0)
我为 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
。
折腾了一天才发现,url被重定向了,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
添加到我的密钥库并且它起作用了。扭曲的世界。
答案 5 :(得分:-1)
尝试替换为
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}