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

Violations plugin tries to access nonexistant directory

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • maven-plugin
    • None
    • Hudson 1.392 on Windows

      The following is a copy from the mailing list (https://groups.google.com/group/hudson-users/browse_thread/thread/d0f343aa877907b?hl=de&pli=1):

      We run Hudson 1.392 and the newest Plugin Versions on a Windows
      machine. Hudson is installed as a Service, running as the Local System
      User. Most jobs do fine, but one Maven job runs into Problems when it
      tries to collect violations (at least that's what I guess from the
      Stacktrace below). The job's workspace has the following layout:

      workspace/

      • apian-parent/
      • - pom.xml
      • - core
      • - [9 more modules]

      The build fails after the initial "clean install" step has been
      completed successfully. It tries to access the folder "E:\HudsonHome
      \jobs\Apian\workspace\apian-parent\apian-parent\", which is one "apian-
      parent" too much.

      The same build ran two days ago without any problems. Since then I
      moved the HudsonHome directory to another drive and reinstalled the
      service. I don't think any of this should cause the problem, since
      other builds run just fine.

      If I disable the violations plugin, this problem is gone.

      [INFO] BUILD SUCCESSFUL
      [INFO]
      ------------------------------------------------------------------------
      [INFO] Total time: 3 minutes 12 seconds
      [INFO] Finished at: Tue Jan 04 10:53:38 CET 2011
      [INFO] Final Memory: 45M/92M
      [INFO]
      ------------------------------------------------------------------------
      ERROR: Processing failed due to a bug in the code. Please report this
      to hudson-users@googlegroups.com
      E:\HudsonHome\jobs\Apian\workspace\apian-parent\apian-parent\core\core-
      model does not exist.
      at
      org.apache.tools.ant.types.AbstractFileSet.getDirectoryScanner(AbstractFileSet.java:474)
      at
      hudson.plugins.violations.ViolationsCollector.findFiles(ViolationsCollector.java:215)
      at
      hudson.plugins.violations.ViolationsCollector.doType(ViolationsCollector.java:166)
      at
      hudson.plugins.violations.ViolationsCollector.invoke(ViolationsCollector.java:110)
      at
      hudson.plugins.violations.ViolationsCollector.invoke(ViolationsCollector.java:27)
      at hudson.FilePath.act(FilePath.java:756)
      at hudson.FilePath.act(FilePath.java:738)
      at
      hudson.plugins.violations.hudson.maven.ViolationsMavenReporter.end(ViolationsMavenReporter.java:96)
      at hudson.maven.MavenModuleSetBuild
      $Builder.end(MavenModuleSetBuild.java:846)
      at hudson.maven.MavenModuleSetBuild
      $RunnerImpl.doRun(MavenModuleSetBuild.java:641)
      at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:417)
      at hudson.model.Run.run(Run.java:1362)
      at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:400)
      at hudson.model.ResourceController.execute(ResourceController.java:88)
      at hudson.model.Executor.run(Executor.java:145)
      project=hudson.maven.MavenModuleSet@166258a[Apian]
      project.getModules()=[hudson.maven.MavenModule@63725d[Apian/
      de.guidecom.apian:apian-parent],
      hudson.maven.MavenModule@13e427e[Apian/de.guidecom.apian:basisdaten],
      hudson.maven.MavenModule@e94c62[Apian/de.guidecom.apian:benutzer-dao],
      hudson.maven.MavenModule@95c2b4[Apian/de.guidecom.apian:benutzer-
      model], hudson.maven.MavenModule@21f752[Apian/
      de.guidecom.apian:benutzer-service],
      hudson.maven.MavenModule@1f44f8a[Apian/de.guidecom.apian:benutzer-
      webapp], hudson.maven.MavenModule@9212f4[Apian/de.guidecom.apian:build-
      tools], hudson.maven.MavenModule@1a755e[Apian/de.guidecom.apian:core-
      dao], hudson.maven.MavenModule@10f7ec9[Apian/de.guidecom.apian:core-
      model], hudson.maven.MavenModule@4cd32e[Apian/de.guidecom.apian:core-
      service], hudson.maven.MavenModule@1bc8de2[Apian/
      de.guidecom.apian:core-webapp], hudson.maven.MavenModule@70f11[Apian/
      de.guidecom.apian:daten], hudson.maven.MavenModule@7f84c9[Apian/
      de.guidecom.apian:demodaten], hudson.maven.MavenModule@16e523d[Apian/
      de.guidecom.apian:hardware-dao],
      hudson.maven.MavenModule@1d93f39[Apian/de.guidecom.apian:hardware-
      model], hudson.maven.MavenModule@1c5cdac[Apian/
      de.guidecom.apian:hardware-service],
      hudson.maven.MavenModule@141f9f6[Apian/de.guidecom.apian:hardware-
      webapp], hudson.maven.MavenModule@81be8a[Apian/
      de.guidecom.apian:software-dao], hudson.maven.MavenModule@4815e[Apian/
      de.guidecom.apian:software-model],
      hudson.maven.MavenModule@1c94b8f[Apian/de.guidecom.apian:software-
      service], hudson.maven.MavenModule@7fcd7e[Apian/
      de.guidecom.apian:software-webapp],
      hudson.maven.MavenModule@8c0c7a[Apian/de.guidecom.apian:ticket-dao],
      hudson.maven.MavenModule@87281f[Apian/de.guidecom.apian:ticket-model],
      hudson.maven.MavenModule@15b4804[Apian/de.guidecom.apian:ticket-
      service], hudson.maven.MavenModule@1d510be[Apian/
      de.guidecom.apian:ticket-webapp],
      hudson.maven.MavenModule@13e49a8[Apian/
      de.guidecom.apian:vorgangsteuerung-service],
      hudson.maven.MavenModule@55eda6[Apian/de.guidecom.apian:webapp]]
      project.getRootModule()=hudson.maven.MavenModule@63725d[Apian/
      de.guidecom.apian:apian-parent]
      FATAL: E:\HudsonHome\jobs\Apian\workspace\apian-parent\apian-parent
      \core\core-model does not exist.
      E:\HudsonHome\jobs\Apian\workspace\apian-parent\apian-parent\core\core-
      model does not exist.
      at
      org.apache.tools.ant.types.AbstractFileSet.getDirectoryScanner(AbstractFileSet.java:474)
      at
      hudson.plugins.violations.ViolationsCollector.findFiles(ViolationsCollector.java:215)
      at
      hudson.plugins.violations.ViolationsCollector.doType(ViolationsCollector.java:166)
      at
      hudson.plugins.violations.ViolationsCollector.invoke(ViolationsCollector.java:110)
      at
      hudson.plugins.violations.ViolationsCollector.invoke(ViolationsCollector.java:27)
      at hudson.FilePath.act(FilePath.java:756)
      at hudson.FilePath.act(FilePath.java:738)
      at
      hudson.plugins.violations.hudson.maven.ViolationsMavenReporter.end(ViolationsMavenReporter.java:96)
      at hudson.maven.MavenModuleSetBuild
      $Builder.end(MavenModuleSetBuild.java:846)
      at hudson.maven.MavenModuleSetBuild
      $RunnerImpl.doRun(MavenModuleSetBuild.java:641)
      at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:417)
      at hudson.model.Run.run(Run.java:1362)
      at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:400)
      at hudson.model.ResourceController.execute(ResourceController.java:88)
      at hudson.model.Executor.run(Executor.java:145)

      Sorry, the formatting got mangled by posting it in the mailing list.

          [JENKINS-8418] Violations plugin tries to access nonexistant directory

          Olivier Lamy added a comment -

          the directory E:\HudsonHome\jobs\Apian\workspace\apian-parent\apian-parent\core\core-
          model is really not here ?
          I reproduce the issue but in fact the directory really exists.

          Olivier Lamy added a comment - the directory E:\HudsonHome\jobs\Apian\workspace\apian-parent\apian-parent\core\core- model is really not here ? I reproduce the issue but in fact the directory really exists.

          tkrueger added a comment -

          The directory E:\HudsonHome\jobs\Apian\workspace\apian-parent is there, but E:\HudsonHome\jobs\Apian\workspace\apian-parent\apian-parent is not.

          The SVN Repo looks as follows:

          • trunk/
          • - apian-parent/
          • - - [module subdirs]

          The Job checks out trunk/apian-parent "" (empty string), which leads to the workspace layout described earlier. Maybe the empty string is of importance here, I think the workspace layout is differently when the directory is "." (which is the default if I remember correctly). I do not own the job, but can try that out if it helps.

          tkrueger added a comment - The directory E:\HudsonHome\jobs\Apian\workspace\apian-parent is there, but E:\HudsonHome\jobs\Apian\workspace\apian-parent\apian-parent is not. The SVN Repo looks as follows: trunk/ - apian-parent/ - - [module subdirs] The Job checks out trunk/apian-parent "" (empty string), which leads to the workspace layout described earlier. Maybe the empty string is of importance here, I think the workspace layout is differently when the directory is "." (which is the default if I remember correctly). I do not own the job, but can try that out if it helps.

          Olivier Lamy added a comment -

          before 1.392 which version did you use ?
          I have reproduce with 1.391.

          Olivier Lamy added a comment - before 1.392 which version did you use ? I have reproduce with 1.391.

          tkrueger added a comment -

          The Version before was 1.389.
          Currently, I switched back to that due to other issues. Violations plugin is working with 1.389. It is still at version 0.7.7.

          tkrueger added a comment - The Version before was 1.389. Currently, I switched back to that due to other issues. Violations plugin is working with 1.389. It is still at version 0.7.7.

          Olivier Lamy added a comment -

          fixed for path with JENKINS-8452.
          But still an issue because the reporter is not executed in the node where the build has been done.

          Olivier Lamy added a comment - fixed for path with JENKINS-8452 . But still an issue because the reporter is not executed in the node where the build has been done.

          Olivier Lamy added a comment -

          still need more fixes for JENKINS-8452 (which fail with subversion but works with git)

          Olivier Lamy added a comment - still need more fixes for JENKINS-8452 (which fail with subversion but works with git)

          dogfood added a comment -

          Integrated in hudson_main_trunk #426
          JENKINS-8418 ensure MavenReporter are executed in the same node as the build has been done
          update changelog for JENKINS-8418

          Olivier Lamy :
          Files :

          • maven-plugin/src/main/java/hudson/maven/MavenBuild.java
          • maven-plugin/src/main/java/hudson/maven/MavenModuleSetBuild.java

          Olivier Lamy :
          Files :

          • changelog.html

          dogfood added a comment - Integrated in hudson_main_trunk #426 JENKINS-8418 ensure MavenReporter are executed in the same node as the build has been done update changelog for JENKINS-8418 Olivier Lamy : Files : maven-plugin/src/main/java/hudson/maven/MavenBuild.java maven-plugin/src/main/java/hudson/maven/MavenModuleSetBuild.java Olivier Lamy : Files : changelog.html

            olamy Olivier Lamy
            tkrueger tkrueger
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: