-
Bug
-
Resolution: Not A Defect
-
Minor
-
None
-
Jenkins LTS: 1.454.3, 1.580.3, 1.625.3
RHEL 6.2, x64 64bit, JDK 7
Maven 2/3 Type job, (maven Integration/project plugin version : 2.7.1)
Suddenly in the past half-day or so, Maven2/3 Type jobs on our Jenkins instances running rather recent version LTS 1.544.3, 1.580.3 and 1.625.3 are hit with this error:
Parsing POMs
ERROR: Failed to parse POMs
hudson.maven.MavenEmbedderException: com.google.inject.ProvisionException: Guice provision errors:
1) No implementation for org.apache.maven.repository.RepositorySystem was bound.
while locating org.apache.maven.execution.DefaultMavenExecutionRequestPopulator
at ClassRealm[maven, parent: ClassRealm[maven-parent, parent: null]]
at ClassRealm[maven, parent: ClassRealm[maven-parent, parent: null]]
while locating org.apache.maven.execution.MavenExecutionRequestPopulator
1 error
role: org.apache.maven.execution.MavenExecutionRequestPopulator
roleHint:
at hudson.maven.MavenEmbedder.<init>(MavenEmbedder.java:130)
at hudson.maven.MavenEmbedder.<init>(MavenEmbedder.java:109)
at hudson.maven.MavenEmbedder.<init>(MavenEmbedder.java:136)
at hudson.maven.MavenUtil.createEmbedder(MavenUtil.java:212)
at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:1288)
at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:1091)
at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2589)
at hudson.remoting.UserRequest.perform(UserRequest.java:121)
at hudson.remoting.UserRequest.perform(UserRequest.java:49)
at hudson.remoting.Request$2.run(Request.java:324)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.codehaus.plexus.component.repository.exception.ComponentLookupException: com.google.inject.ProvisionException: Guice provision errors:
1) No implementation for org.apache.maven.repository.RepositorySystem was bound.
while locating org.apache.maven.execution.DefaultMavenExecutionRequestPopulator
at ClassRealm[maven, parent: ClassRealm[maven-parent, parent: null]]
at ClassRealm[maven, parent: ClassRealm[maven-parent, parent: null]]
while locating org.apache.maven.execution.MavenExecutionRequestPopulator
1 error
role: org.apache.maven.execution.MavenExecutionRequestPopulator
roleHint:
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:264)
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:252)
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:246)
at hudson.maven.MavenEmbedder.lookup(MavenEmbedder.java:567)
at hudson.maven.MavenEmbedder.buildMavenExecutionRequest(MavenEmbedder.java:157)
at hudson.maven.MavenEmbedder.<init>(MavenEmbedder.java:120)
... 14 more
Caused by: com.google.inject.ProvisionException: Guice provision errors:
1) No implementation for org.apache.maven.repository.RepositorySystem was bound.
at Key[type=org.apache.maven.execution.DefaultMavenExecutionRequestPopulator, annotation=[none]]
at ClassRealm[maven, parent: ClassRealm[maven-parent, parent: null]]
at ClassRealm[maven, parent: ClassRealm[maven-parent, parent: null]]
at Key[type=org.apache.maven.execution.MavenExecutionRequestPopulator, annotation=[none]]
1 error
at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:1014)
at org.eclipse.sisu.inject.LazyBeanEntry.getValue(LazyBeanEntry.java:82)
at org.eclipse.sisu.plexus.LazyPlexusBean.getValue(LazyPlexusBean.java:51)
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:260)
... 19 more
Finished: FAILURE
At a glance, the embedded Maven jar looks not right. The solution I am able to come up with is to disconnect the slave, and force slave to connect so it gets new slave.jar and whatever the maven embedded jar again to workspace.