【问题标题】:Maven deploy to nexus certificate issuesMaven部署到nexus证书问题
【发布时间】:2014-08-04 17:05:09
【问题描述】:

将我的 nexus 服务器从家庭服务器移动到根服务器后,如果我在我的 jenkins 从属服务器上启动任何构建作业,我会收到以下错误:

传输文件时出错:sun.security.validator.ValidatorException:PKIX 路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到到所请求目标的有效证书路径

我家里没有证书,现在我使用的是由startssl签名的证书,而不是自签名的。

在google上查阅后发现maven 3.0.5更新出现了一些问题,需要将你的证书导入java证书文件。我还读到只有在您使用自签名证书时才需要这样做,但我仍然尝试了这个解决方案,但没有帮助。我通过直接导入我的证书并使用此链接中的类然后复制创建的文件来做到这一点:

https://www.liferay.com/de/web/neil.griffin/blog/-/blogs/fixing-suncertpathbuilderexception-caused-by-maven-downloading-from-self-signed-repository

我尝试的下一件事是从 Windows 机器上复制证书文件,据报道这在某些情况下会有所帮助,但没有。

然后我使用不同的 maven 版本开始构建,3.0.1、3.0.4、3.0.5、3.2.1,没关系。总是一样的。

作为最后一步,我将我的 java 从 openjdk 7 升级到 oracle java 7 和 8,这也是一个死胡同。

有人知道我在这里遗漏的关键信息吗?我不想添加属性来忽略任何证书检查。这必须以安全可靠的方式工作。

编辑:通过控制台手动发布就可以了。看来tomcat/jenkins在证书解析上有些问题。我也试过这个:

https://gist.github.com/4ndrej/4547029

完全没有问题。

【问题讨论】:

    标签: java maven jenkins certificate nexus


    【解决方案1】:

    我刚刚发现它为什么不起作用。我将 jenkins 配置为使用自动安装的 JDK 进行构建作业。问题是,这个安装没有得到我为实际运行 tomcat/jenkins 服务器的虚拟机设置的任何环境变量,这在重新考虑时是合理的,但几乎不透明。我找不到为 VM 设置任何环境变量的方法,因此这不是解决方案。

    我解决这个问题的方法很简单,使用实际启动 tomcat/jenkins 服务器并配置了我的证书的 VM。

    【讨论】:

      猜你喜欢
      • 2013-03-06
      • 1970-01-01
      • 2018-11-29
      • 1970-01-01
      • 2016-06-28
      • 2011-06-20
      • 2013-08-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多