Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-746

hudson.util.IOException2: Cannot start Plexus embedder.

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Critical Critical
    • maven-plugin
    • None
    • Platform: Other, OS: All

      After hudson runs for awhile (a couple of weeks) all my modules fail to build.
      To temporarily solve the problem I have to restart hudson; which isn't too fun.
      I am running on linux and jdk1.5. This is how I am running hudson: java -jar
      hudson.war.

      Here is the stacktrace:
      ERROR: Failed to parse POMs
      hudson.util.IOException2: Cannot start Plexus embedder.
      at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:357)
      at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:296)
      at hudson.FilePath.act(FilePath.java:241)
      at hudson.maven.MavenModuleSetBuild$RunnerImpl.doRun(MavenModuleSetBuild.java:221)
      at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:129)
      at hudson.model.Run.run(Run.java:562)
      at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:159)
      at hudson.model.ResourceController.execute(ResourceController.java:66)
      at hudson.model.Executor.run(Executor.java:59)
      Caused by: org.apache.maven.embedder.MavenEmbedderException: Cannot start Plexus
      embedder.
      at hudson.maven.MavenEmbedder.start(MavenEmbedder.java:645)
      at hudson.maven.MavenUtil.createEmbedder(MavenUtil.java:43)
      at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:337)
      ... 8 more
      Caused by: org.codehaus.plexus.PlexusContainerException: Error starting container
      at
      org.codehaus.plexus.DefaultPlexusContainer.start(DefaultPlexusContainer.java:787)
      at org.codehaus.plexus.embed.Embedder.start(Embedder.java:220)
      at org.codehaus.plexus.embed.Embedder.start(Embedder.java:183)
      at hudson.maven.MavenEmbedder.start(MavenEmbedder.java:604)
      ... 10 more
      Caused by: org.codehaus.plexus.configuration.PlexusConfigurationException: Error
      reading configuration
      jar:file:/tmp/winstone/hudson-1.121.war/WEB-INF/lib/maven-profile-2.0.4.jar!/META-INF/plexus/components.xml
      at
      org.codehaus.plexus.component.discovery.AbstractComponentDiscoverer.findComponents(AbstractComponentDiscoverer.java:89)
      at
      org.codehaus.plexus.DefaultPlexusContainer.discoverComponents(DefaultPlexusContainer.java:717)
      at
      org.codehaus.plexus.DefaultPlexusContainer.start(DefaultPlexusContainer.java:779)
      ... 13 more
      Caused by: java.util.zip.ZipException: No such file or directory
      at java.util.zip.ZipFile.open(Native Method)
      at java.util.zip.ZipFile.<init>(ZipFile.java:203)
      at java.util.jar.JarFile.<init>(JarFile.java:132)
      at java.util.jar.JarFile.<init>(JarFile.java:70)
      at sun.net.www.protocol.jar.URLJarFile.<init>(URLJarFile.java:56)
      at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:41)
      at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:68)
      at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:102)
      at
      org.codehaus.plexus.component.discovery.AbstractComponentDiscoverer.findComponents(AbstractComponentDiscoverer.java:72)
      ... 15 more
      finished: FAILURE

          [JENKINS-746] hudson.util.IOException2: Cannot start Plexus embedder.

          jlorenzen added a comment -

          Created an attachment (id=81)
          console output containing stacktrace

          jlorenzen added a comment - Created an attachment (id=81) console output containing stacktrace

          The error message suggests that somehow the files in /tmp directory is wiped out
          by someone else. See the root cause, which is not being able to find
          jar:file:/tmp/winstone/hudson-1.121.war/WEB-INF/lib/maven-profile-2.0.4.jar!/META-INF/plexus/components.xml

          When this problem happens next time, can you check if /tmp/winstone/... still
          exists? Since /tmp is world-writable, perhaps another user decided to wipe it off?

          Kohsuke Kawaguchi added a comment - The error message suggests that somehow the files in /tmp directory is wiped out by someone else. See the root cause, which is not being able to find jar: file:/tmp/winstone/hudson-1.121.war/WEB-INF/lib/maven-profile-2.0.4.jar!/META-INF/plexus/components.xml When this problem happens next time, can you check if /tmp/winstone/... still exists? Since /tmp is world-writable, perhaps another user decided to wipe it off?

          jlorenzen added a comment -

          So it finally happened again. It took a little bit longer this time.
          The same error is occurring currently and I logged into the machine to take a
          look at the /tmp directory.

          This is what I found.
          1) There were still lots of data under /tmp. So I suspect that the entire /tmp
          directory didn't get deleted.

          2) The /tmp/winstone directory still existed as well.

          3) The directory maven-profile-2.0.4.jar! was missing from under the directory
          /tmp/winstone/hudson-1.121.war/WEB-INF/lib. However the lib folder also contains
          maven-agent-1.136.jar, maven-interceptor-1.136.jar, and remoting-1.136.jar. Just
          not the maven-profile-2.0.4.jar!.

          So under /tmp/winstone/hudson-1.121.war/WEB-INF/lib I have:
          maven-agent-1.136.jar
          maven-interceptor-1.136.jar
          remoting-1.136.jar

          I can't imagine some daemon or human intentionally or accidentally deleting this
          directory. If the tmp folder can randomly be deleted, why does winstone put
          config files there? What not the user home directory?

          jlorenzen added a comment - So it finally happened again. It took a little bit longer this time. The same error is occurring currently and I logged into the machine to take a look at the /tmp directory. This is what I found. 1) There were still lots of data under /tmp. So I suspect that the entire /tmp directory didn't get deleted. 2) The /tmp/winstone directory still existed as well. 3) The directory maven-profile-2.0.4.jar! was missing from under the directory /tmp/winstone/hudson-1.121.war/WEB-INF/lib. However the lib folder also contains maven-agent-1.136.jar, maven-interceptor-1.136.jar, and remoting-1.136.jar. Just not the maven-profile-2.0.4.jar!. So under /tmp/winstone/hudson-1.121.war/WEB-INF/lib I have: maven-agent-1.136.jar maven-interceptor-1.136.jar remoting-1.136.jar I can't imagine some daemon or human intentionally or accidentally deleting this directory. If the tmp folder can randomly be deleted, why does winstone put config files there? What not the user home directory?

          redsolo added a comment -

          I had the same problem, and it was because I was running two hudsons at the same
          time. I had one production hudson and one hudson for testing new
          implementations. When I had started the main hudson instance it would work but
          as soon as I ran the test instance the main instance would stop working.

          redsolo added a comment - I had the same problem, and it was because I was running two hudsons at the same time. I had one production hudson and one hudson for testing new implementations. When I had started the main hudson instance it would work but as soon as I ran the test instance the main instance would stop working.

          This appears to be essentially a duplicate of issue #693.

              • This issue has been marked as a duplicate of 693 ***

          Kohsuke Kawaguchi added a comment - This appears to be essentially a duplicate of issue #693. This issue has been marked as a duplicate of 693 ***

            Unassigned Unassigned
            jlorenzen jlorenzen
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: