使用gradle编译的,配置的阿里云的镜像。 阿里云网站的证书也导入到$JAVA_HOME/jre/lib/security/cacerts
里了 但是还是报如下错误:
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':core'.
> Could not resolve all files for configuration ':core:scoverage'.
> Could not download scalac-scoverage-plugin_2.11.jar (org.scoverage:scalac-scoverage-plugin_2.11:1.3.1)
> Could not get resource 'https://maven.aliyun.com/repository/public/org/scoverage/scalac-scoverage-plugin_2.11/1.3.1/scalac-scoverage-plugin_2.11-1.3.1.jar'.
> Could not GET 'https://maven.aliyun.com/repository/public/org/scoverage/scalac-scoverage-plugin_2.11/1.3.1/scalac-scoverage-plugin_2.11-1.3.1.jar'.
> sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
> Could not download scalac-scoverage-runtime_2.11.jar (org.scoverage:scalac-scoverage-runtime_2.11:1.3.1)
> Could not get resource 'https://maven.aliyun.com/repository/public/org/scoverage/scalac-scoverage-runtime_2.11/1.3.1/scalac-scoverage-runtime_2.11-1.3.1.jar'.
> Could not GET 'https://maven.aliyun.com/repository/public/org/scoverage/scalac-scoverage-runtime_2.11/1.3.1/scalac-scoverage-runtime_2.11-1.3.1.jar'.
> sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
遇到这个问题,通常意味着Java运行时环境(JRE)无法验证阿里云Maven仓库的SSL证书。尽管您已经将证书导入到$JAVA_HOME/jre/lib/security/cacerts
,但仍然出现此错误,可能是因为以下原因:
证书导入不正确:确保您正确地将阿里云的CA证书导入到了Java的信任存储中,并且没有遗漏或错误。可以使用keytool -list -keystore $JAVA_HOME/jre/lib/security/cacerts
命令检查证书是否已成功导入。
使用的Java环境问题:有时候,系统中可能存在多个Java版本或不同的Java环境变量设置,导致您的构建实际上并未使用您认为的那个Java环境。请确认Gradle执行时确实使用了包含已导入证书的JRE。
证书链问题:如果阿里云的证书是由一个根证书签发的,而这个根证书不在信任库中,也会导致该问题。需要确保整个证书链都已被导入。
时间同步问题:系统时间与现实时间差异过大也可能导致SSL验证失败。请检查并同步您的系统时间。
特定于Gradle的配置:在您的build.gradle
文件或者全局的gradle.properties
中,确保正确的仓库URL被使用,并且代理设置(如果有)是正确的。例如,确认Alibaba Cloud Maven Repository的镜像地址配置无误。
解决步骤建议:
keytool
命令再次确认证书是否正确导入。java -version
来检查。gradle clean
命令),然后重新构建项目。--info
或--debug
选项运行Gradle以获取更详细的日志输出,这有助于定位问题所在。如果以上步骤都无法解决问题,可能需要进一步检查网络配置、防火墙设置或考虑是否存在其他安全软件阻止了SSL连接。