这是与 Android Studio 3.0 和企业网络相关的问题。我有同样的问题。
Error:Could not resolve all files for configuration ':app:debugAndroidTestRuntimeClasspath'.
> Could not resolve com.android.support.test:runner:1.0.1.
Required by:
project :app
> Could not resolve com.android.support.test:runner:1.0.1.
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/support/test/runner/1.0.1/runner-1.0.1.pom'.
> Could not GET 'https://dl.google.com/dl/android/maven2/com/android/support/test/runner/1.0.1/runner-1.0.1.pom'.
> sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
> Could not resolve com.android.support.test.espresso:espresso-core:3.0.1.
Required by:
project :app
> Could not resolve com.android.support.test.espresso:espresso-core:3.0.1.
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/support/test/espresso/espresso-core/3.0.1/espresso-core-3.0.1.pom'.
> Could not GET 'https://dl.google.com/dl/android/maven2/com/android/support/test/espresso/espresso-core/3.0.1/espresso-core-3.0.1.pom'.
> sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
我给你留下2个解决方案:
第一:
您必须手动将证书添加到您的 java 安全证书(由 Android 使用):
C:\Program Files\Android\Android Studio\jre\jre\lib\security\cacerts
解决方案01(对我不起作用):
Go to:
C:\Program Files\Android\Android Studio\jre\jre\bin
下载您需要的证书(只需复制有问题的 URL 并将其粘贴到<remote_host_name>
):
keytool -J-Dhttps.proxyHost=<proxy_hostname> -J-Dhttps.proxyPort=<proxy_port> -printcert -rfc -sslserver <remote_host_name:remote_ssl_port> > <name.cer>
Example:
C:\Program Files\Android\Android Studio\jre\jre\bin>keytool -J-Dhttps.proxyHost= proxy.mycompany.com -J-Dhttps.proxyPort=80 -printcert -rfc -sslserver https://dl.google.com/dl/android/maven2/com/android/support/test/runner/1.0.1/runner-1.0.1.pom > maven2.cer
并运行命令:
keytool -import -noprompt -trustcacerts -keystore ..\lib\security\cacerts -importcert -alias <AliasName> -file <name.cer> -storepass <cacertsPassword>
如果您从未更改过 cacerts 的密码,则默认密码是changeit
:
Example:
C:\Program Files\Android\Android Studio\jre\jre\bin>keytool -import -noprompt -trustcacerts -keystore ..\lib\security\cacerts -importcert -alias Maven -file maven2.cer -storepass changeit
解决方案02(为我工作):
下载输入 URL 站点的 pom 并将其存储在本地存储库中:
Ex:
If your missing resoruce is:
https://dl.google.com/dl/android/maven2/com/android/support/test/espresso/espresso-core/3.0.1/espresso-core-3.0.1.pom
Download it and put it in:
C:/Program Files/Android/Android Studio/gradle/m2repository/com/android/support/test/espresso/espresso-core/3.0.1/espresso-core-3.0.1.pom