我有一个 Maven 项目并使用 this answer 添加了 db4o 作为依赖项来自上一个问题。当我编译项目时,出现以下错误:
Could not resolve dependencies for project org.uca.dss:trenes:jar:1.0-SNAPSHOT: [...] Failed to read artifact descriptor for com.db4o:db4o-full-java5:jar:7.13-SNAPSHOT: Could not transfer artifact com.db4o:db4o-full-java5:pom:7.13-SNAPSHOT from/to source.db4o (https://source.db4o.com/maven/): Error transferring file: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target -> [Help 1]
奇怪的是,它只发生在 Ubuntu GNU/Linux 中(在两台 PC 上测试),而不是在 Windows 中(使用 NetBeans 7.0)。
我可以发布完整的错误(来自 maven -X 输出),但我认为它不会添加太多信息
编辑 1:
这是我在 pom.xml
文件中关于 db4o 的内容:
<repository>
<id>source.db4o</id>
<url>https://source.db4o.com/maven/</url>
</repository>
...
<dependency>
<groupId>com.db4o</groupId>
<artifactId>db4o-full-java5</artifactId>
<version>7.13-SNAPSHOT</version>
</dependency>
最佳答案
这看起来像是安全请求的安全证书问题,通常从 %JAVA_HOME%\jre\lib\security\cacerts
查找。我猜测您的windows JRE
有条目,而ubuntu JRE
没有。
顺便说一下这个link是一本关于安装证书的好书。您可能想使用此处提到的选项 1。
关于java - 无法从 Maven : cert error 下载项目依赖项 (db4o),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5923707/