Maven发布插件SSL问题

时间:2018-10-02 13:53:09

标签: java maven ssl maven-3 maven-release-plugin

在我的CI(gitlab)中,我正在使用来自docker的maven来执行工件的构建以及在 archiva 存储库上的部署。

archiva存储库使用通过 letsencrypt 生成的SSL证书。

我可以使用以下方法将工件成功部署在 archiva 上:

 mvn clean package -B deploy -Djavax.net.ssl.trustStore=/tmp/mavenKeystore

我正在将keystore作为cli参数传递:一切正常。

但是使用释放插件时,trustStore参数将被忽略:

mvn release:clean release:prepare -B release:perform -DscmCommentPrefix='[ci skip]' -Djavax.net.ssl.trustStore=/tmp/mavenKeystore

使用此命令,我得到SSL错误:

sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

1 个答案:

答案 0 :(得分:0)

我发现,我需要传递trustStore作为deploy目标的参数。这有效:

mvn release:prepare -B release:perform -DscmCommentPrefix='[ci skip]' -Dgoals='deploy -Djavax.net.ssl.trustStore=/tmp/mavenKeystore'