使用詹金斯(Jenkins)进行的人工部署失败

问题描述 投票:0回答:1

Artifactory版本-7.5.5

Jenkins Artifactory插件版本-3.6.2

Maven集成插件版本-3.6

Apache HttpComponents Client 4.x API插件版本-4.5.10-2.0

管道脚本:

node {
  withMaven(maven: 'RnDMaven') { {
    def server = Artifactory.server('RnDArtifactory')
    def rtMaven = Artifactory.newMavenBuild()
    rtMaven.deployer server : server , releaseRepo : "MGB", snapshotRepo : "MGB"
    def buildInfo = rtMaven.run pom: 'pom.xml', goals: 'clean install' 
  }
}

我使用上面的配置和管道脚本来进行Artifactory Maven构建,因此出现以下错误。做过各种事情来解决它,例如更改插件的版本,甚至下载了最新版本的Jenkins,但结果是相同的。

java.lang.NoSuchFieldError:实例在org.apache.http.conn.ssl.SSLConnectionSocketFactory。

错误原因是上述原因。互联网和人工制品论坛中发现的各种解决方案都指出了插件版本之间的冲突。但是即使升级后,我也能得到相同的结果。完整的跟踪信息如下。

[错误] org.jfrog.build.extractor.maven.BuildInfoRecorder.sessionEnded() 侦听器失败:java.lang.RuntimeException: java.util.concurrent.ExecutionException:java.lang.NoSuchFieldError: 的实例 org.jfrog.build.extractor.ModuleParallelDeployHelper.deployArtifacts(ModuleParallelDeployHelper.java:37) 在 org.jfrog.build.extractor.maven.BuildDeploymentHelper.deploy(BuildDeploymentHelper.java:88) 在 org.jfrog.build.extractor.maven.BuildInfoRecorder.sessionEnded(BuildInfoRecorder.java:173) 在 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:320)处 org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)在 org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)在 org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)在 org.apache.maven.cli.MavenCli.main(MavenCli.java:141)在 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.launchEnhanced(Launcher.java:290) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 在 org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:414) 在 org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:357) 引起原因:java.util.concurrent.ExecutionException: java.lang.NoSuchFieldError:实例在 java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357) 在 java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1908) 在 org.jfrog.build.extractor.ModuleParallelDeployHelper.deployArtifacts(ModuleParallelDeployHelper.java:35) ... 18更多原因:java.lang.NoSuchFieldError:INSTANCE在 org.apache.http.conn.ssl.SSLConnectionSocketFactory。(SSLConnectionSocketFactory.java:151) 在 org.apache.http.impl.conn.PoolingHttpClientConnectionManager.getDefaultRegistry(PoolingHttpClientConnectionManager.java:115) 在 org.apache.http.impl.conn.PoolingHttpClientConnectionManager。(PoolingHttpClientConnectionManager.java:122) 在 org.jfrog.build.client.PreemptiveHttpClientBuilder.buildConnectionManager(PreemptiveHttpClientBuilder.java:143) 在 org.jfrog.build.client.PreemptiveHttpClientBuilder.build(PreemptiveHttpClientBuilder.java:113) 在 org.jfrog.build.client.ArtifactoryHttpClient.getHttpClient(ArtifactoryHttpClient.java:177) 在 org.jfrog.build.client.ArtifactoryHttpClient.getHttpClient(ArtifactoryHttpClient.java:159) 在 org.jfrog.build.client.ArtifactoryHttpClient.executeGetRequest(ArtifactoryHttpClient.java:216) 在 org.jfrog.build.client.ArtifactoryHttpClient.getVersion(ArtifactoryHttpClient.java:185) 在 org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBaseClient.getArtifactoryVersion(ArtifactoryBaseClient.java:127) 在 org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.tryChecksumDeploy(ArtifactoryBuildInfoClient.java:717) 在 org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.uploadFile(ArtifactoryBuildInfoClient.java:676) 在 org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.doDeployArtifact(ArtifactoryBuildInfoClient.java:379) 在 org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.deployArtifact(ArtifactoryBuildInfoClient.java:367) 在 org.jfrog.build.extractor.ModuleParallelDeployHelper.lambda $ deploy $ 4(ModuleParallelDeployHelper.java:45) 在java.lang.Iterable.forEach(Iterable.java:75)在 org.jfrog.build.extractor.ModuleParallelDeployHelper.deploy(ModuleParallelDeployHelper.java:43) 在 org.jfrog.build.extractor.ModuleParallelDeployHelper.lambda $ null $ 1(ModuleParallelDeployHelper.java:33) 在 java.util.concurrent.CompletableFuture $ AsyncRun.run(CompletableFuture.java:1640) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 在 java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624) 在java.lang.Thread.run(Thread.java:748)上[错误]内部错误: java.lang.RuntimeException: org.jfrog.build.extractor.maven.BuildInfoRecorder.sessionEnded() 侦听器失败:java.util.concurrent.ExecutionException: java.lang.NoSuchFieldError:实例-> [帮助1] org.apache.maven.InternalErrorException:内部错误: java.lang.RuntimeException: org.jfrog.build.extractor.maven.BuildInfoRecorder.sessionEnded() 侦听器失败:在 org.apache.maven.DefaultMaven.execute(DefaultMaven.java:168)在 org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)在 org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)在 org.apache.maven.cli.MavenCli.main(MavenCli.java:141)在 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.launchEnhanced(Launcher.java:290) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 在 org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:414) 在 org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:357) 造成原因:java.lang.RuntimeException: org.jfrog.build.extractor.maven.BuildInfoRecorder.sessionEnded() 侦听器失败:在 org.jfrog.build.extractor.maven.BuildInfoRecorder.sessionEnded(BuildInfoRecorder.java:182) 在 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:320)处 org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)... 11 更多原因:java.lang.RuntimeException: java.util.concurrent.ExecutionException:java.lang.NoSuchFieldError: 的实例 org.jfrog.build.extractor.ModuleParallelDeployHelper.deployArtifacts(ModuleParallelDeployHelper.java:37) 在 org.jfrog.build.extractor.maven.BuildDeploymentHelper.deploy(BuildDeploymentHelper.java:88) 在 org.jfrog.build.extractor.maven.BuildInfoRecorder.sessionEnded(BuildInfoRecorder.java:173) ... 16更多原因:java.util.concurrent.ExecutionException: java.lang.NoSuchFieldError:实例在 java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357) 在 java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1908) 在 org.jfrog.build.extractor.ModuleParallelDeployHelper.deployArtifacts(ModuleParallelDeployHelper.java:35) ... 18更多原因:java.lang.NoSuchFieldError:INSTANCE在 org.apache.http.conn.ssl.SSLConnectionSocketFactory。(SSLConnectionSocketFactory.java:151) 在 org.apache.http.impl.conn.PoolingHttpClientConnectionManager.getDefaultRegistry(PoolingHttpClientConnectionManager.java:115) 在 org.apache.http.impl.conn.PoolingHttpClientConnectionManager。(PoolingHttpClientConnectionManager.java:122) 在 org.jfrog.build.client.PreemptiveHttpClientBuilder.buildConnectionManager(PreemptiveHttpClientBuilder.java:143) 在 org.jfrog.build.client.PreemptiveHttpClientBuilder.build(PreemptiveHttpClientBuilder.java:113) 在 org.jfrog.build.client.ArtifactoryHttpClient.getHttpClient(ArtifactoryHttpClient.java:177) 在 org.jfrog.build.client.ArtifactoryHttpClient.getHttpClient(ArtifactoryHttpClient.java:159) 在 org.jfrog.build.client.ArtifactoryHttpClient.executeGetRequest(ArtifactoryHttpClient.java:216) 在 org.jfrog.build.client.ArtifactoryHttpClient.getVersion(ArtifactoryHttpClient.java:185) 在 org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBaseClient.getArtifactoryVersion(ArtifactoryBaseClient.java:127) 在 org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.tryChecksumDeploy(ArtifactoryBuildInfoClient.java:717) 在 org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.uploadFile(ArtifactoryBuildInfoClient.java:676) 在 org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.doDeployArtifact(ArtifactoryBuildInfoClient.java:379) 在 org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.deployArtifact(ArtifactoryBuildInfoClient.java:367) 在 org.jfrog.build.extractor.ModuleParallelDeployHelper.lambda $ deploy $ 4(ModuleParallelDeployHelper.java:45) 在java.lang.Iterable.forEach(Iterable.java:75)在 org.jfrog.build.extractor.ModuleParallelDeployHelper.deploy(ModuleParallelDeployHelper.java:43) 在 org.jfrog.build.extractor.ModuleParallelDeployHelper.lambda $ null $ 1(ModuleParallelDeployHelper.java:33) 在 java.util.concurrent.CompletableFuture $ AsyncRun.run(CompletableFuture.java:1640) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 在 java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624) 在java.lang.Thread.run(Thread.java:748)

jenkins jenkins-pipeline jenkins-plugins artifactory apache-httpclient-4.x
1个回答
0
投票
请尝试这个:

node { def server = Artifactory.server('RnDArtifactory') def rtMaven = Artifactory.newMavenBuild() rtMaven.tool = 'RnDMaven' rtMaven.deployer server : server , releaseRepo : "MGB", snapshotRepo : "MGB" def buildInfo = rtMaven.run pom: 'pom.xml', goals: 'clean install' }

这将保证使用'RnDMaven'Maven工具。我不确定是否会有所帮助,但这是运行Maven Artifactory作业的正式方法。

示例在这里:https://github.com/jfrog/project-examples/blob/master/jenkins-examples/pipeline-examples/scripted-examples/maven-example/Jenkinsfile

文档在这里:https://www.jfrog.com/confluence/display/JFROG/Scripted+Pipeline+Syntax#ScriptedPipelineSyntax-MavenBuildswithArtifactory

© www.soinside.com 2019 - 2024. All rights reserved.