Uploaded image for project: 'Maven Checkstyle Plugin'
  1. Maven Checkstyle Plugin
  2. MCHECKSTYLE-10

Exception when creating Checkstyle report as part of a 'site' build

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • 2.0
    • 2.0
    • None
    • None
    • Windows XP, JDK 1.4.2_10, Maven 2.0.2-SNAPSHOT, maven-checkstyle-plugin 2.0-beta-2-SNAPSHOT

    Description

      When attempting to create a project site including a checkstyle report, the build fails with the attached stack trace. However, when creating a checkstyle report simply by running 'mvn checkstyle:checkstyle', the build is successful and the report is produced.

      From some initial investigation, it appears that the classloader passed in to checkstyle itself by the plugin can locate essential resources when the build is specifically for checkstyle, but cannot locate them when it is invoked as part of a call for 'site'. This can be tested by adding the following lines of code into org.apache.maven.plugin.checkstyle.CheckstyleReport.getModuleFactory(), where 'loader' is the ClassLoader being passed to the PackageNamesLoader:

      getLog().info("\n\n\n\nClass loader: " + loader.getClass().getName());
      getLog().info("Input stream: " + loader.getResourceAsStream("com/puppycrawl/tools/checkstyle/checkstyle_packages.xml"));
      getLog().info("DTD: " + loader.getResourceAsStream("com/puppycrawl/tools/checkstyle/packages_1_0.dtd"));

      These should show jar file URLs if found, and null if not, which will happen respectively when run as 'mvn checkstyle:checkstyle' and 'mvn site'.

      Attachments

        1. error_trace.txt
          4 kB
          Nick Giles

        Issue Links

          Activity

            People

              fgiust Fabrizio Giustina
              uroshnor Nick Giles
              Votes:
              2 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: