繁体   English   中英

Maven部署到Nexus证书问题

[英]Maven deploy to nexus certificate issues

将我的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

完全没有问题。

我只是发现了为什么它不起作用。 我将jenkins配置为使用自动安装的JDK进行构建作业。 问题是,此安装未获得我为实际上正在运行tomcat / jenkins服务器的VM设置的任何环境变量,这在经过深思熟虑后是合理的,但几乎不透明。 我找不到为VM设置任何环境变量的方法,因此这不是解决方案。

我所做的解决起来非常简单,请使用实际上启动了tomcat / jenkins服务器并使用我的证书进行配置的VM。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM