ARTIFACTORY:如何解决peer not authenticated Error During a Deployment from Jenkins

JFrog支持
2023-01-22十一10

如果您使用的Artifactory SSL证书不是由知名证书颁发机构颁发的,那么您需要信任该SSL证书的根证书和中间证书。如果您确实信任这样的证书,则需要手动将其添加到Jenkins的证书存储区以及Jenkins使用的任何应用程序的证书存储区。此后,Jenkins Artifactory插件将调用Maven (mvn)来构建和部署工件。或者,您可以决定为mvn在构建期间应该使用的证书存储指定一个路径。

例如,看看下面的截图:

用户添加图片

如前所述,您可以为Jenkins作业使用MAVEN_OPTS环境变量来声明mvn的证书存储;使用以下命令设置证书存储的路径:

-Djavax.net.ssl.trustStore = {the-path-to-the-certificate-store}

否则,您可能会在构建过程中看到以下错误:[ERROR] org.jfrog.build.extractor.maven.BuildInfoRecorder.sessionEnded()监听失败:
java.lang.RuntimeException:将工件发布到Artifactory: /app/jenkins/jobs/XXXXX(省略)XXXX时发生错误。
跳过剩余工件(如果有的话)和构建信息的部署。
org.jfrog.build.extractor.maven.BuildDeploymentHelper.deployArtifacts (BuildDeploymentHelper.java: 277)
org.jfrog.build.extractor.maven.BuildDeploymentHelper.deploy (BuildDeploymentHelper.java: 98)
org.jfrog.build.extractor.maven.BuildInfoRecorder.sessionEnded (BuildInfoRecorder.java: 170)
org.apache.maven.lifecycle.internal.DefaultExecutionEventCatapult.fire (DefaultExecutionEventCatapult.java: 64)
在org.apache.maven.lifecycle.internal.DefaultExecutionEventCatapult.fire (DefaultExecutionEventCatapult.java: 42)
org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java: 170)
org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java: 317)
org.apache.maven.DefaultMaven.execute (DefaultMaven.java: 152)
org.jvnet.hudson.maven3.launcher.Maven31Launcher.main (Maven31Launcher.java: 132)
在sun.reflect.NativeMethodAccessorImpl。invoke0(本地方法)
sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java: 62)
sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java: 43)
java.lang.reflect.Method.invoke (Method.java: 498)
org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard (Launcher.java: 330)
org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java: 238)
jenkins.maven3.agent.Maven31Main.launch (Maven31Main.java: 185)
在sun.reflect.NativeMethodAccessorImpl。invoke0(本地方法)
sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java: 62)
sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java: 43)
java.lang.reflect.Method.invoke (Method.java: 498)
hudson.maven.Maven3Builder.call (Maven3Builder.java: 136)
hudson.maven.Maven3Builder.call (Maven3Builder.java: 71)
hudson.remoting.UserRequest.perform (UserRequest.java: 120)
在hudson.remoting.UserRequest.perform (UserRequest.java: 48)
在hudson.remoting.Request 2.美元运行(Request.java: 332)
在hudson.remoting.InterceptingExecutorService 1.美元调用(InterceptingExecutorService.java: 68)
java.util.concurrent.FutureTask.run (FutureTask.java: 266)
java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java: 1142)
java.util.concurrent.ThreadPoolExecutor Worker.run美元(ThreadPoolExecutor.java: 617)
java.lang.Thread.run (Thread.java: 745)
产生原因:javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated . (peer not authenticated .
sun.security.ssl.SSLSessionImpl.getPeerCertificates (SSLSessionImpl.java: 431)
org.apache.http.conn.ssl.AbstractVerifier.verify (AbstractVerifier.java: 126)
org.apache.http.conn.ssl.SSLSocketFactory.connectSocket (SSLSocketFactory.java: 437)
org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection (DefaultClientConnectionOperator.java: 180)
org.apache.http.impl.conn.ManagedClientConnectionImpl.open (ManagedClientConnectionImpl.java: 294)
org.apache.http.impl.client.DefaultRequestDirector.tryConnect (DefaultRequestDirector.java: 643)
org.apache.http.impl.client.DefaultRequestDirector.execute (DefaultRequestDirector.java: 479)
org.apache.http.impl.client.AbstractHttpClient.execute (AbstractHttpClient.java: 906)
org.apache.http.impl.client.AbstractHttpClient.execute (AbstractHttpClient.java: 805)
org.jfrog.build.client.PreemptiveHttpClient.execute (PreemptiveHttpClient.java: 88)
org.jfrog.build.client.ArtifactoryHttpClient.execute (ArtifactoryHttpClient.java: 199)
org.jfrog.build.client.ArtifactoryHttpClient.upload (ArtifactoryHttpClient.java: 195)
org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.uploadFile (ArtifactoryBuildInfoClient.java: 618)
org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.deployArtifact (ArtifactoryBuildInfoClient.java: 329)
org.jfrog.build.extractor.maven.BuildDeploymentHelper.deployArtifacts (BuildDeploymentHelper.java: 275)
…29个
[ERROR]内部错误:java.lang.RuntimeException: org.jfrog.build.extractor.maven.BuildInfoRecorder.sessionEnded() listener has failed:当将artifact发布到Artifactory: /app/jenkins/jobs/XXX时发生错误(omcommitted)