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

Publish FindBugs/Checkstyle from slave failed

    Details

    • Similar Issues:

      Description

      After Checkstyle run on a Windows-Slave the publishing of
      the results on the master fails.

      On the Windows-Slave a current slave.jar is installed.
      I'm running Jenkins with Version 1.526. The Code-Analysis Plugins are up to date.

      [CHECKSTYLE] Collecting checkstyle analysis files...
      ERROR: Publisher hudson.plugins.checkstyle.CheckStylePublisher aborted due to exception
      hudson.util.IOException2: remote file operation failed: C:\Jenkins\workspace\cockpit at hudson.remoting.Channel@64226422:jenkins-win
      at hudson.FilePath.act(FilePath.java:902)
      at hudson.FilePath.act(FilePath.java:879)
      at hudson.plugins.checkstyle.CheckStylePublisher.perform(CheckStylePublisher.java:143)
      at hudson.plugins.analysis.core.HealthAwarePublisher.perform(HealthAwarePublisher.java:144)
      at hudson.plugins.analysis.core.HealthAwareRecorder.perform(HealthAwareRecorder.java:334)
      at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
      at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:804)
      at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:776)
      at hudson.model.Build$BuildExecution.post2(Build.java:183)
      at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:726)
      at hudson.model.Run.execute(Run.java:1622)
      at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      at hudson.model.ResourceController.execute(ResourceController.java:88)
      at hudson.model.Executor.run(Executor.java:247)
      Caused by: java.io.IOException: Remote call on jenkins-win failed
      at hudson.remoting.Channel.call(Channel.java:723)
      at hudson.FilePath.act(FilePath.java:895)
      ... 13 more
      Caused by: javax.xml.parsers.FactoryConfigurationError: Provider org.apache.xerces.jaxp.SAXParserFactoryImpl not found
      at javax.xml.parsers.SAXParserFactory.newInstance(Unknown Source)
      at org.apache.commons.digester.Digester.getFactory(Digester.java:537)
      at org.apache.commons.digester.Digester.getParser(Digester.java:791)
      at org.apache.commons.digester.Digester.getXMLReader(Digester.java:1068)
      at org.apache.commons.digester.Digester.parse(Digester.java:1940)
      at hudson.plugins.checkstyle.parser.CheckStyleParser.parse(CheckStyleParser.java:67)
      at hudson.plugins.analysis.core.AbstractAnnotationParser.parse(AbstractAnnotationParser.java:53)
      at hudson.plugins.analysis.core.FilesParser.parseFile(FilesParser.java:306)
      at hudson.plugins.analysis.core.FilesParser.parseFiles(FilesParser.java:264)
      at hudson.plugins.analysis.core.FilesParser.parserCollectionOfFiles(FilesParser.java:215)
      at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:184)
      at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:31)
      at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2414)
      at hudson.remoting.UserRequest.perform(UserRequest.java:118)
      at hudson.remoting.UserRequest.perform(UserRequest.java:48)
      at hudson.remoting.Request$2.run(Request.java:326)
      at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
      at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
      at java.util.concurrent.FutureTask.run(Unknown Source)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      at hudson.remoting.Engine$1$1.run(Engine.java:63)
      at java.lang.Thread.run(Unknown Source)
      

        Attachments

          Activity

          Hide
          drulli Ulli Hafner added a comment -

          Ok, I understand. Maybe I should remove the SAX parser setting. This have been added due to some classloading problems on older Java versions. Since we are now depending on Java 6 this might not be necessary anymore.

          Show
          drulli Ulli Hafner added a comment - Ok, I understand. Maybe I should remove the SAX parser setting. This have been added due to some classloading problems on older Java versions. Since we are now depending on Java 6 this might not be necessary anymore.
          Hide
          schoppi Andreas Schopper added a comment -

          Hi Ulli, is there any progress on this issue. We still have this problem and would appreciate a quick fix.
          Thanks in advance for your help.
          Regards,
          Andreas

          Show
          schoppi Andreas Schopper added a comment - Hi Ulli, is there any progress on this issue. We still have this problem and would appreciate a quick fix. Thanks in advance for your help. Regards, Andreas
          Hide
          drulli Ulli Hafner added a comment - - edited

          Actually no. I still can't reproduce so any change would be just like guessing.

          Maybe you can download the sources and compile a version that wraps the Checkstyle Parser call (at hudson.plugins.checkstyle.parser.CheckStyleParser.parse(CheckStyleParser.java:67)) into:

                  SaxSetup sax = new SaxSetup();
          
                  try {
                      // parse Checkstyle file
                  }
                  finally {
                      sax.cleanup();
                  }
          
          
          Show
          drulli Ulli Hafner added a comment - - edited Actually no. I still can't reproduce so any change would be just like guessing. Maybe you can download the sources and compile a version that wraps the Checkstyle Parser call (at hudson.plugins.checkstyle.parser.CheckStyleParser.parse(CheckStyleParser.java:67)) into: SaxSetup sax = new SaxSetup(); try { // parse Checkstyle file } finally { sax.cleanup(); }
          Hide
          schoppi Andreas Schopper added a comment -

          Hi Ulli,

          the fix doesn't work. With and without the property -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl.

          I took the source from https://github.com/jenkinsci/checkstyle-plugin
          Changed hudson.plugins.checkstyle.parser.CheckStyleParser.java Line 67 to:

          SaxSetup sax = new SaxSetup();
          try

          { // parse Checkstyle file module = (CheckStyle)digester.parse(new InputStreamReader(file, "UTF-8")); }

          finally

          { sax.cleanup(); }

          Regards
          Andreas

          Show
          schoppi Andreas Schopper added a comment - Hi Ulli, the fix doesn't work. With and without the property -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl. I took the source from https://github.com/jenkinsci/checkstyle-plugin Changed hudson.plugins.checkstyle.parser.CheckStyleParser.java Line 67 to: SaxSetup sax = new SaxSetup(); try { // parse Checkstyle file module = (CheckStyle)digester.parse(new InputStreamReader(file, "UTF-8")); } finally { sax.cleanup(); } Regards Andreas
          Hide
          drulli Ulli Hafner added a comment -

          SAX property is not overwritten anymore by the plugin.

          Show
          drulli Ulli Hafner added a comment - SAX property is not overwritten anymore by the plugin.

            People

            • Assignee:
              drulli Ulli Hafner
              Reporter:
              wiesel_j Julia
            • Votes:
              2 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: