Checkstyle Plugin

Skip to end of metadata
Go to start of metadata

Plugin Information

Plugin ID checkstyle Changes In Latest Release
Since Latest Release
Latest Release
Latest Release Date
Required Core
Dependencies
3.39
Feb 10, 2014
1.424
maven-plugin (version:1.424, optional)
dashboard-view (version:2.2, optional)
analysis-core (version:1.55)
token-macro (version:1.5.1, optional)
Source Code
Issue Tracking
Maintainer(s)
GitHub
Open Issues
Ulli Hafner (id: drulli)
Usage Installations 2013-Apr 9334
2013-May 9291
2013-Jun 9504
2013-Jul 9932
2013-Aug 9771
2013-Sep 10032
2013-Oct 10288
2013-Nov 10178
2013-Dec 10098
2014-Jan 10644
2014-Feb 10881
2014-Mar 11333

This plugin generates the trend report for Checkstyle, an open source static code analysis program. 

Installation Requirements
This plug-in requires the utility plug-in "analysis-core" (called "Static Analysis Utilities" in the update manager). Please ensure that the latest version of this plug-in is also installed.

It's about 5 years now since my first Jenkins commit. I hope that you all enjoy using my static code analysis plug-ins and that these plug-ins are very helpful for your projects! There is now an easy way to support the development of these open source plug-ins I just released my Android game Inca Trails. So feel free to support my work for Jenkins by buying this game in Google Play. Of course, the game is worth its price anyway

Description


 
This plug-in is supported by the Static Analysis Collector plug-in that collects different analysis results and shows the results in aggregated trend graphs. Additionally, health reporting and build stability is also based on the aggregated results.

The Checkstyle plug-in scans for checkstyle-result.xml files in the build workspace and reports the number of warnings found. This plug-in is part of the suite of static code analysis plug-ins that are documented on a separate WIKI page.

The following features are provided by this plug-in:

  • Configuration of the files to scan after a build.
  • Build summary showing the new and fixed warnings of a build
  • Several trend reports showing the number of warnings per build
  • Overview of the found warnings per module, package, category, or type
    • Parsing of Maven pom.xml or Ant build.xml configuration files to obtain the module or project name
    • Parsing of Java files to obtain the package or name space name
  • Detail reports of the found warnings optionally filtered by severity (or new and fixed)
    • Short messages is read from the report file
    • Detailed description is read from the Checkstyle library
  • Colored HTML display of the corresponding source file and warning lines:
    • Direct link to the warning line
    • Highlighting of single lines as well as line ranges
    • Highlighting of multiple line ranges per warning (different color for primary range)
    • Tool tip describing the warning message
  • Failure threshold to mark a build as unstable
  • Configurable project health support
  • Remote API to export the build quality and found warnings
  • Works with the freestyle and native m2 build option (activated on goal checkstyle:checkstyle or site)
  • Several tokens to simplify post processing of the results
  • Localization available for: DE, JA (Please help to localize checkstyle for your locale!)

The current release is available in the download section. This plug-in is developed and maintained by Ullrich Hafner. Please use the mailing lists or issue tracker to ask questions, create feature request or bug reports, since I don't read the comment section on this page regularly.

Changelog

You can support the development of this open source plug-ins by buying my Android game Inca Trails in Google Play!

Release3.39

Release 3.38

  • Added a view column that shows the number of warnings in a job

Release 3.37

  • Make dependency to ant-plugin optional

Release 3.36

  • Use columns of Checkstyle warnings when parsing files (issue #19122)
  • Fix sorting of warnings that are on same line but different column (issue #19047)
  • Show results of threshold evaluation also in console log (issue #18954)
  • Escape XML symbols in warning messages (issue #17309)

Release 3.35

Release 3.34

Release 3.33

  • Show more details in the fixed warnings view (issue #15959)
  • Aggregate the maven parent module results in failed builds when the failure is caused by a threshold being hit (issue #15324, issue #12342)
  • Optimized http requests for static resources in the analysis plugins (issue #16571)
  • Fixed missing build overview in maven jobs (issue #16518)
  • Always use Xerces when parsing XML files (issue #15613)
  • Read pom.xml to obtain path of output files in maven jobs (issue #16250)
  • Show error message as file content if the source files could not be transferred to the master (issue #16222)

Release 3.32

  • Added option to consider only stable builds when calculating new warnings (Thanks to David Pärsson for the patch, issue #15037)
  • Fixed NPE when comparing warnings (issue #15414, issue #15250)

Release 3.31

Release 3.30

Release 3.29

  • Reduce memory footprint of plug-in (thanks to Kohsuke for the patches)
  • Upgrade to YUI 2.9 (support for new bread crumbs and context menus: issue #13532, thanks to OHTAKE Tomohiro for the patch)

Release 3.28

  • Show all values of difference graph

Release 3.27

  • Added hyperlinks to build summary if threshold is exceeded (issue #12424)

Release 3.26

  • Added option to filter projects with zero warnings in the warnings dashboard portlet (issue #12984)
  • Center the affected source line in source view (issue #13491)
  • Fixed incompatibility of detail tabs with new bread crumb view (issue #13532)

Release 3.25

  • Added a new portlet that shows the warning totals as a line graph

Release 3.24

  • Show build result threshold evaluation information in build summary (issue #12424)
  • Fixed plug-in configuration if used in conjunction with flexible-publisher plug-in (issue #12182, issue #8185)
  • Upgrade to Checkstyle 5.5

Release 3.23

  • Fixed initialization problem when configuring the plug-in for maven jobs. (issue #12075)

Release 3.22

  • Fixed NPE while configuring a graph with no builds yet (issue #12045)
  • Group warnings by relative path if the associated language has no package or namespace concept (issue #11846)
  • Allow skipping of calculating "new" issues (issue #11761)
  • Fixed display of 'Use delta for new warnings' option (issue #11758)
  • Ignore 'new warnings' threshold in the first build (issue #11718)

Release 3.21

  • Fixed enlarge link for trend graphs (issue #11324)
  • Fixed visibility of 'enable trend graph' link
  • Fixed reading of results if analysis is invoked during 'mvn site' (issue #10820)

Release 3.20

  • Ignore failed builds when evaluating the build history in trend graphs and new warnings calculation (issue #10682)
  • Added OSGi bundle detection when grouping warnings by module (issue #10681)
  • Use the path as a replacement for the package grouping for all warnings that are not from Java or C# files (issue 2)

Release 3.19

  • Added new tokens for token macro plug-in (issue #10027): now tokens CHECKSTYLE_NEW, CHECKSTYLE_FIXED, CHECKSTYLE_COUNT and CHECKSTYLE_RESULT are available.

Release 3.18

Release 3.17

  • Fixed display of trend graphs for maven jobs (report)

Release 3.16

  • Fixed health reporting and build failure/unstable thresholds for maven project type (issue #4912, issue #3514)
  • Fixed broken detail views when using a reverse proxy (issue #3410, thanks to Benjamin Cabé for the fix)
  • Show the reference build that is used to compute new and fixed warnings (when build thresholds are set)
  • Improved logging statements when build is executed on a slave

Release 3.15

  • Added configuration option to enable automatic project and module name detection by reading all Ant project.xml and Maven pom.xml files (issue #8915, issue #9090)
  • Added preliminary support for the Token Macro Plugin: CHECKSTYLE_COUNT expands to the number of Checkstyle warnings and CHECKSTYLE_RESULT expands to the plug-in build result (stable, unstable, failed)

Release 3.14

  • Fixed missing dependency to Hudson/Jenkins 1.395 (issue #8509)

Release 3.13

  • Jenkins update to links and documentation
  • Show progress text while dashboard portlet graphs are created

Release 3.12

  • Added support for multi-configuration projects (issue #6772)

Release 3.11

  • Fixed sorting of date labels of dashboard trend graphs (issue #8476)
  • Fixed evaluation of builds that will be considered in the dashboard trend graph (issue #8283)

Release 3.10

  • Added build status thresholds for each warning priority (issue #3561)

Release 3.9

  • Fixed computation of module names for maven projects (issue #6768)
  • Don't report an error message if a maven module does not contain a report file (issue #6895)
  • Fixed ant links (issue #6862)

Release 3.8

Release 3.7

Release 3.6

  • Fixed broken links to project page and overview image (issue #6417)

Release 3.5

  • Added trend graph portlets for the dashboard view
  • Added option to start the plug-in even for failed builds (issue #6117)
  • Added 'enlarge' link for trend graphs that shows a detail page with the graph
  • Fixed ordering of warnings in detail views (issue #6132)
  • Fixed warning distribution graph in files detail view (issue #6139)

Release 3.4

Release 3.3

  • New warnings computation is now based on the current build and the reference build (i.e., the last successful build, see issue #5147)
  • Visualized plug-in build status (based on the healthiness thresholds)
  • Added high scores for successful builds
  • Don't show project action if there are no warnings (issue #5473)
  • Don't show trend graph configuration on job creation (issue #5294)
  • Improved remote API, now the warning keys are also exposed (issue #5195)

Release 3.2

Release 3.1

  • Fixed trend report link if there are no results available yet (issue #5156)
  • Fixed preview of trend reports
  • Added dependency to Hudson 1.337 due to a class loader bug in previous versions (issue #4993)

Release 3.0

  • Extracted common code of the static code analysis plug-ins into a new utility plug-in "analysis-core"
  • Several bug fixes and small improvements

Release 1.x-2.x ChangeLog

Labels

plugin-maven plugin-maven Delete
plugin-report plugin-report Delete
supports-dashboard-view supports-dashboard-view Delete
token-producer token-producer Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Sep 02, 2008

    Mathieu Cousy says:

    Hello, We have just updated the plugin to 1.13version and it seems there is a p...

    Hello,

    We have just updated the plugin to 1.13version and it seems there is a problem with the icon management.

    Actually  in the dashboard we have lost the tooltips and images (replaced by '%') on the projects using checkstyle plugins.

    Is there anything to configure in this last version ?

     Thanks in advance,

    Mathieu 

    1. Sep 03, 2008

      Ulli Hafner says:

      This is a bug. Could you please file an issue? Thanks, Ulli

      This is a bug. Could you please file an issue?

      Thanks, Ulli

      1. Sep 03, 2008

        Mathieu Cousy says:

        Ok, I have open an issue : https://hudson.dev.java.net/issues/show_bug.cgi?id=23...
  2. Jan 20, 2009

    zaccret - says:

    Hi, Could you tell us which Checkstyle and Checkstyle Maven Plugin versions can...

    Hi,

    Could you tell us which Checkstyle and Checkstyle Maven Plugin versions can be used with this plugin ?

    Thanks in advance.

    Zac

    1. Jan 21, 2009

      Ulli Hafner says:

      Actually there should be no hard dependencies to a specific version. We are usin...

      Actually there should be no hard dependencies to a specific version. We are using the latest checkstyle and maven plugin.

  3. Sep 16, 2009

    Mohamed Osman says:

    It seems to get the Source Code Visualization feaute you must have Administer pe...

    It seems to get the Source Code Visualization feaute you must have Administer permission.

    Error:

    Access Denied

    ****** is missing the Administer permission

    Is there any reason for this? anyway to get this without setting your self up with admin rights?

    Thanks

    -Mohamed

  4. Sep 24, 2009

    Kyle Hebert says:

    Hey guys, Is there anyway to configure this plugin to look in a directory besid...

    Hey guys,

    Is there anyway to configure this plugin to look in a directory besides "target" to find the checkstyle-result.xml file.

    In my pom.xml I have something like this:

    <build>
    <directory>build/jars</directory>
    ...
    </build>

    The checkstyle:checkstyle goal runs fine and the report gets put in this directory but this plugin can't find it. If I change the directory back to "target" everything works fine...

    Any ideas or suggestions would be very appreciated.

    Thanks,

    Kyle

  5. Oct 02, 2009

    krischan83 - says:

    Hi, I have a further question considering the rights management: In our setup,...

    Hi,

    I have a further question considering the rights management:

    In our setup, the links to the highlighted code are available when an admin is logged in only.

    It might make sense, that anonymous user can't see that.

    However, even our subproject (job) managers ain't permitted to get the links.

    Is that desired behavior?

    cheers,

    Christian

  6. Feb 02, 2010

    xavier vignon says:

    Hi, I've got a problem with this plugin : after successful installation (and in...

    Hi,

    I've got a problem with this plugin : after successful installation (and installation of the static analysis utilities plugin), when i go on job configuration page, it does not display correctly, and in my jonas console i've got a JellyTagException ... caused by java.lang.NoClassDefFoundError: hudson/tasks/BuildStepMonitor.

    Anyone can help me ??

    Thx a lot

    Xavier

    1. Feb 21, 2010

      Romain Seguy says:

      You're using a version of the plugin which is built against a more recent versio...

      You're using a version of the plugin which is built against a more recent version of Hudson ==> Either downgrade the plugin or upgrade your Hudson version.

  7. May 11, 2010

    Skifflad says:

    Just upgraded to Hudson 1.357 with Checkstyle Plug-In 3.6 and Static Analysis Co...

    Just upgraded to Hudson 1.357 with Checkstyle Plug-In 3.6 and Static Analysis Collector 1.5.

    Checkstyle is running ok, but the plug-in is reporting a red ball error on each specific build page where there are checkstyle warnings to report. When you click on Warnings, you see the Warnings page with a correct Summary, but the details section is only showing the Tab headings (Packages, Files, Warnings, Details) but nothing further ?

    Anybody else seeing same ?

    1. May 11, 2010

      Trent McClenahan says:

      Yep, I've got the same here.... haven't been able to work it out yet... fingers ...

      Yep, I've got the same here.... haven't been able to work it out yet... fingers crossed the guys are on to it!

      1. May 13, 2010

        Skifflad says:

        I've just added an issue.

        I've just added an issue.

  8. Jun 03, 2010

    Sven Oppermann says:

    I want to fail the build if there is a new warning in checkstyle. But if i set t...

    I want to fail the build if there is a new warning in checkstyle. But if i set the boundary  for "new" under the "red ball" to one, it doesnt work. Do i miss something !?!?!

    1. Jun 04, 2010

      Ulli Hafner says:

      You need to use '0' if the build should fail on 1 warning! What does the checks...

      You need to use '0' if the build should fail on 1 warning!

      What does the checkstyle plug-in report in the console?

      E.g.:

      [CHECKSTYLE] Found 113  annotations (0 high, 113 normal, 0 low)
      [CHECKSTYLE] Setting build status to UNSTABLE since total number of new annotations exceeds the threshold 0
      
      1. Jun 04, 2010

        Sven Oppermann says:

        My log looks like: [CHECKSTYLE] Successfully parsed file /home/workarea/zvs/wo...

        My log looks like:

        [CHECKSTYLE] Successfully parsed file /home/workarea/zvs/workspace/zvs-continuous_0.1.0/zvs/application/model/impl/target/checkstyle-result.xml of module de.mms_dresden.zvs.application.model.impl with 1 warnings.
        [hudson] Archiving ...

        It is a maven job in hudson and the project itself is a multi modul maven project. I set the boundary to 0 but it is still not working...

        1. Jun 24, 2010

          Sven Oppermann says:

          i digged deeper and i couldnt find a solution. What i did: 1. created a "Hello ...

          i digged deeper and i couldnt find a solution. What i did:

          1. created a "Hello World " maven app: "mvn archetype:create -DgroupId=... -DartifactId=helloWorld" and added the checkstyle plugin to the reporting section

          2. installed a clean hudson

          3. added "Checkstyle Plug-in  3.8" and "Static Analysis Collector Plug-in 1.6" to hudson

          4. created a new maven job in hudson for this "hello world" project

                mvn goal: "mvn clean install site"
                checkstyle settings: "red ball (total): 1" "red ball(new): 0"

          The output:

           -------------------------------------------------------
           T E S T S
          -------------------------------------------------------
          Running de.mms_dresden.zvs.testproject.AppTest
          Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.063 sec
          
          Results :
          
          Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
          
          [HUDSON] Zeichne Testergebnisse auf
          [INFO] [jar:jar {execution: default-jar}]
          [INFO] Building jar: D:\projekte\hudson\checkstyle-3.8\work\jobs\helloWorld\workspace\helloWorld\target\helloWorld-1.0-SNAPSHOT.jar
          [INFO] [install:install {execution: default-install}]
          [INFO] Installing D:\projekte\hudson\checkstyle-3.8\work\jobs\helloWorld\workspace\helloWorld\target\helloWorld-1.0-SNAPSHOT.jar to D:\projekte\hudson\checkstyle-3.8\work\jobs\helloWorld\workspace\.repository\de\mms_dresden\zvs\testproject\helloWorld\1.0-SNAPSHOT\helloWorld-1.0-SNAPSHOT.jar
          [INFO] [site:site {execution: default-site}]
          [INFO] Generating "Project Team" report.
          [INFO] Generating "Issue Tracking" report.
          [INFO] Generating "Checkstyle" report.
          [INFO]
          [INFO] There are 12 checkstyle errors.
          [WARNING] Unable to locate Source XRef to link to - DISABLED
          [INFO] Generating "Continuous Integration" report.
          [INFO] Generating "Project Plugins" report.
          [INFO] Generating "Dependencies" report.
          [INFO] Generating "Plugin Management" report.
          [INFO] Generating "Mailing Lists" report.
          [INFO] Generating "Source Repository" report.
          [INFO] Generating "Project Summary" report.
          [INFO] Generating "About" report.
          [INFO] Generating "Project License" report.
          [CHECKSTYLE] Successfully parsed file D:\projekte\hudson\checkstyle-3.8\work\jobs\helloWorld\workspace\helloWorld\target\checkstyle-result.xml of module helloWorld with 12 warnings.
          [HUDSON] Archiving site from D:\projekte\hudson\checkstyle-3.8\work\jobs\helloWorld\workspace\helloWorld\target\site to D:\projekte\hudson\checkstyle-3.8\work\jobs\helloWorld\site\helloWorld
          [HUDSON] Archiving D:\projekte\hudson\checkstyle-3.8\work\jobs\helloWorld\workspace\helloWorld\pom.xml to D:\projekte\hudson\checkstyle-3.8\work\jobs\helloWorld\modules\de.mms_dresden.zvs.testproject$helloWorld\builds\2010-06-24_14-19-43\archive\de.mms_dresden.zvs.testproject\helloWorld\1.0-SNAPSHOT\pom.xml
          [HUDSON] Archiving D:\projekte\hudson\checkstyle-3.8\work\jobs\helloWorld\workspace\helloWorld\target\helloWorld-1.0-SNAPSHOT.jar to D:\projekte\hudson\checkstyle-3.8\work\jobs\helloWorld\modules\de.mms_dresden.zvs.testproject$helloWorld\builds\2010-06-24_14-19-43\archive\de.mms_dresden.zvs.testproject\helloWorld\1.0-SNAPSHOT\helloWorld-1.0-SNAPSHOT.jar
          [INFO] ------------------------------------------------------------------------
          [INFO] BUILD SUCCESSFUL
          [INFO] ------------------------------------------------------------------------
          [INFO] Total time: 1 minute 18 seconds
          [INFO] Finished at: Thu Jun 24 14:21:04 CEST 2010
          [INFO] Final Memory: 39M/254M
          [INFO] ------------------------------------------------------------------------
          channel stopped
          Finished: SUCCESS
          
          

          should i create a ticket?

          1. Jun 25, 2010

            Ulli Hafner says:

            I see, you are using a m2 build. Currently the thresholds don't work for m2 buil...

            I see, you are using a m2 build. Currently the thresholds don't work for m2 builds: see http://issues.jenkins-ci.org/browse/JENKINS-4912.

            1. Jun 25, 2010

              Sven Oppermann says:

              i found a workaround. if i activate the "Checkstyle Plugin " and the "Static Ana...

              i found a workaround. if i activate the "Checkstyle Plugin " and the "Static Analysis Collector Plug-in"  and set the bounderies on the "Static Analysis Collector Plug-in", it fails the build.

  9. Oct 26, 2010

    suri says:

    Hi I am trying to integrate checkstyle plugin to Hudson manually, The instructio...

    Hi
    I am trying to integrate checkstyle plugin to Hudson manually, The instructions say download and copy the .hpi file into the hudson plugin directory, but when i try to download it downloads a checkstyle.zip file and is an exploder war file.Where can i get the checkstyle.hpi file to copy into the hudson plugin directory.

    1. Oct 26, 2010

      Stefan Bäumler says:

      http://updates.jenkins-ci.org/latest/checkstyle.hpi or the corresponding versio...
  10. Nov 16, 2010

    fbaboschi - says:

    Is there any way to send an email to the commiter(s) (without failing the build)...

    Is there any way to send an email to the commiter(s) (without failing the build) when someone commits a new checkstyle warning (basically new checkstyle warnings are found)?

    Thanks.

    1. Dec 15, 2010

      Ulli Hafner says:

      No that is not possible. That would be a nice feature request for the email comp...

      No that is not possible. That would be a nice feature request for the email component of Hudson.

  11. Dec 14, 2010

    Steven Wood says:

    Hey, I installed the newest hudson and checkstyle-plugin version. I see the che...

    Hey,

    I installed the newest hudson and checkstyle-plugin version. I see the checkstyle trend at the right side and the output of my build tells me that there are 0 warnings read from the checkstyle file. So far so good ...

    My problem is that in the hudson overview of a project I only see the standard hudson menu with status, changes, build, delete ...

    When I installed the plugin the first time (3 or 4 months ago) there were some checkstyle icon(link) where I can get more information about checkstyle of the current project.

    I only see the trend and at a build the informatzion that the checkstyle file was load.

    Thnaks in advance

    1. Dec 15, 2010

      Ulli Hafner says:

      The link is only shown if there are warnings in a project.

      The link is only shown if there are warnings in a project.

  12. Jan 27, 2011

    Tomas Milian says:

    Hi, Not sure if it's a bug or not but just upgraded to checkstyle plugin v3.11...

    Hi,

    Not sure if it's a bug or not but just upgraded to checkstyle plugin v3.11along with the analysis-core, findbugs plugin, cpd. and all the reporters work except checkstyle. Hudson is v1.392 and Maven v2.1.0.

    All my jobs native Maven multi-module projects. Before I updated it would pick up all the checkstyle-result.xml files from all modules but now  this is what I get:

    [HUDSON]Collecting dependencies info
    [INFO] [checkstyle:checkstyle]
    [CHECKSTYLE] Skipping maven reporter: there is already a result available.
    [TASKS] Skipping maven reporter: there is already a result available.
    [HUDSON] Collecting dependencies info
    
    [INFO] \[checkstyle:check \[execution: default\]\]
    [CHECKSTYLE] Skipping maven reporter: there is already a result available.
    [TASKS] Skipping maven reporter: there is already a result available.
    [INFO] Preparing findbugs:check
    [INFO] Preparing findbugs:findbugs
    [WARNING] Removing: check from forked lifecycle, to prevent recursive invocation.
    [WARNING] Removing: check from forked lifecycle, to prevent recursive invocation.
    [WARNING] Removing: check from forked lifecycle, to prevent recursive invocation.
    [HUDSON] Collecting dependencies info
    [INFO] [resources:resources]
    [INFO] Using 'UTF-8' encoding to copy filtered resources.
    [INFO] Copying 1 resource
    [TASKS] Skipping maven reporter: there is already a result available.
    [INFO] [compiler:compile]
    [INFO] Nothing to compile - all classes are up to date
    [TASKS] Skipping maven reporter: there is already a result available.
    [HUDSON] Collecting dependencies info
    [INFO] [findbugs:findbugs]
    [INFO] Locale is en
    [FINDBUGS] Successfully parsed file D:\hudson_home\jobs\core_int\workspace\core_int\VOB_EA\core\core-modules\core-concurrent\target\findbugsXml.xml of module EA Core Concurrent Jar with 0 warnings.
    

    The checkstyle-result-xml file is being written on the target folder as it should, Maven CLI execution works fine also.

    The Maven build is not doing any of the site goals, just binding the checkstyle plugin to its default Maven lifecycle stage (verify).

    Sorry for writing this here but I tried to open a JIRA issue with no avail (I even signed up and everything).

    Thanks

    1. Feb 17, 2011

      Ulli Hafner says:

      Are you running the build in parallel, i.e. individual maven modules build in pa...

      Are you running the build in parallel, i.e. individual maven modules build in parallel?

  13. Feb 16, 2011

    abhi prabhakar says:

    I am setting up hudson for checkstyle.  I have installed checkstyle 3.9 and...

    I am setting up hudson for checkstyle.  I have installed checkstyle 3.9 and Static code analysis plug-in 1.9 version.  I am using maven-checkstyle-plugin version 2.6 locally and this is working fine.

    But in Hudson I am gettting below error.  Any leads on how to solve this?at java.lang.Thread.run(Thread.java:662)
    Caused by: java.lang.NoSuchMethodError: hudson.plugins.checkstyle.CheckStyleReporter.getModuleName(Lorg/apache/maven/project/MavenProject;)Ljava/lang/String;
    at hudson.plugins.checkstyle.CheckStyleReporter.perform(CheckStyleReporter.java:81)
    at hudson.plugins.analysis.core.HealthAwareMavenReporter.postExecute(HealthAwareMavenReporter.java:197)
    at hudson.maven.Maven3Builder$MavenExecutionListener.reccordMojoSucceeded(Maven3Builder.java:568)
    at hudson.maven.Maven3Builder$MavenExecutionListener.mojoSucceeded(Maven3Builder.java:531)
    at org.apache.maven.lifecycle.internal.DefaultExecutionEventCatapult.fire(DefaultExecutionEventCatapult.java:87)
    at org.apache.maven.lifecycle.internal.DefaultExecutionEventCatapult.fire(DefaultExecutionEventCatapult.java:42)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:228)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
    at org.jvnet.hudson.maven3.launcher.Maven3Launcher.main(Maven3Launcher.java:79)

    1. Feb 17, 2011

      Ulli Hafner says:

      Seems that the versions of the plug-in and Hudson are quite old. Can you please ...

      Seems that the versions of the plug-in and Hudson are quite old. Can you please upgrade to the latest versions and retry.?

  14. Mar 31, 2011

    Krzysztof Pleban says:

    Hi, I'm getting such error. I'm using the newest version of Jenkins & plugi...

    Hi,

    I'm getting such error. I'm using the newest version of Jenkins & plugins. Restarting Jenkins helps for a while but then again :

    [CHECKSTYLE] Collecting checkstyle analysis files...
    ERROR: Publisher hudson.plugins.checkstyle.CheckStylePublisher aborted due to exception
    java.lang.ClassCastException: cannot assign instance of hudson.plugins.analysis.core.FilesParser to field hudson.FilePath$FileCallableWrapper.callable of type hudson.FilePath$FileCallable in instance of hudson.FilePath$FileCallableWrapper
        at java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(Unknown Source)
        at java.io.ObjectStreamClass.setObjFieldValues(Unknown Source)
        at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
        at java.io.ObjectInputStream.readSerialData(Unknown Source)
        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
        at java.io.ObjectInputStream.readObject0(Unknown Source)
        at java.io.ObjectInputStream.readObject(Unknown Source)
        at hudson.remoting.UserRequest.deserialize(UserRequest.java:178)
        at hudson.remoting.UserRequest.perform(UserRequest.java:98)
        at hudson.remoting.UserRequest.perform(UserRequest.java:48)
        at hudson.remoting.Request$2.run(Request.java:270)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at hudson.remoting.Engine$1$1.run(Engine.java:58)
        at java.lang.Thread.run(Unknown Source)

    1. Apr 13, 2011

      Krzysztof Pleban says:

      Ok, the problem is resolved - version of one of slave was old. There's no except...

      Ok, the problem is resolved - version of one of slave was old. There's no exception after update.

      1. Dec 07, 2011

        Pablo Morales says:

        I have this issuesERROR: Publisher hudson.plugins.checkstyle.CheckStylePublisher...

        I have this issuesERROR: Publisher hudson.plugins.checkstyle.CheckStylePublisher aborted due to exception

        
        ERROR: Publisher hudson.plugins.checkstyle.CheckStylePublisher aborted due to exception
        java.lang.NullPointerException: Name is null
        at java.lang.Enum.valueOf(Enum.java:213)
        at hudson.plugins.analysis.util.model.Priority.valueOf(Priority.java:18)
        at hudson.plugins.analysis.core.HealthAwarePublisher.getMinimumPriority(HealthAwarePublisher.java:567)
        at hudson.plugins.analysis.core.AbstractHealthDescriptor.<init>(AbstractHealthDescriptor.java:36)
        at hudson.plugins.checkstyle.CheckStyleHealthDescriptor.<init>(CheckStyleHealthDescriptor.java:25)
        at hudson.plugins.checkstyle.CheckStyleResultAction.<init>(CheckStyleResultAction.java:31)
        at hudson.plugins.checkstyle.CheckStylePublisher.perform(CheckStylePublisher.java:143)
        at hudson.plugins.analysis.core.HealthAwarePublisher.perform(HealthAwarePublisher.java:312)
        at hudson.tasks.BuildStepMonitor$2.perform(BuildStepMonitor.java:27)
        at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:692)
        at hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:667)
        at hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:645)
        at hudson.model.Build$RunnerImpl.post2(Build.java:162)
        at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:614)
        at hudson.model.Run.run(Run.java:1429)
        at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
        at hudson.model.ResourceController.execute(ResourceController.java:88)
        at hudson.model.Executor.run(Executor.java:238)
        
        
        1. Feb 26, 2012

          David Humeniuk says:

          I have the same problem.  Any solution found?

          I have the same problem.  Any solution found?

          1. Feb 26, 2012

            David Humeniuk says:

            It looks like when the configuration page is opened, a threshold value is not se...

            It looks like when the configuration page is opened, a threshold value is not selected.  If the configuration is saved an invalid value is used when running the build.  As long as a value is selected it seems to work, but every time you bring up the configuration again, the value is unselected.  If you look at the config.xml, the selected value is in there as long as it is saved with something selected.

            I should add I'm using version 3.23.

            1. Feb 28, 2012

              Ulli Hafner says:

              This is an incompatibility between checkstyle plug-in and the flexible-publisher...

              This is an incompatibility between checkstyle plug-in and the flexible-publisher plug-in. Will be fixed with the next releases of the analysis plug-ins and the flexible-publisher plug-in.

              See https://issues.jenkins-ci.org/browse/JENKINS-12182, https://issues.jenkins-ci.org/browse/JENKINS-12692, https://issues.jenkins-ci.org/browse/JENKINS-8185.

  15. Apr 20, 2012

    O Bacak says:

    Hello, I'd like to suppress checkstyle for *Test.java files in my project. ...

    Hello,

    I'd like to suppress checkstyle for *Test.java files in my project. How can I configure the plugin?

    1. Apr 20, 2012

      Ulli Hafner says:

      The plug-in is the wrong place, you need to configure checkstyle in your build c...

      The plug-in is the wrong place, you need to configure checkstyle in your build correctly.

      1. Apr 20, 2012

        O Bacak says:

        Thanks Ulli for your reply. Is it to be done in the pom.xml of the project or i...

        Thanks Ulli for your reply.

        Is it to be done in the pom.xml of the project or in Jenkins Dashboard -> Project -> Configure (I couldn't find it here)

        1. Apr 20, 2012

          Ulli Hafner says:

          In your pom, see online reference for checkstyle maven plug-in.

          In your pom, see online reference for checkstyle maven plug-in.

  16. May 22, 2012

    Matt Cheely says:

    This wiki page says that: "The Checkstyle plug-in scans for checkstyle-result.x...

    This wiki page says that:

    "The Checkstyle plug-in scans for checkstyle-result.xml files in the build workspace"

    but, in practice, and from a quick review of the source, it seems that only actually looks for a single checkstyle-result.xml file in the project's target directory.

    Is that behavior intentional or would it qualify as a bug? Scanning multiple checkstyle-result.xml files would be quite useful for me, as I have a javascript code analysis plugin that creates reports in a checkstyle-compatible format. (no reason to re-invent the wheel). I'd like to be able to get reporting on those errors alongside the standard checkstyle results. I realize it's probably not ideal to piggyback on the checkstyle reporting plugin for this, but I don't have the time or resources to try to create a new static-analysis plugin for Jenkins.

    1. May 22, 2012

      Ulli Hafner says:

      Actually the plug-in works with multiple files. Are you using a maven or freesty...

      Actually the plug-in works with multiple files. Are you using a maven or freestyle job? In freestyle jobs you can define multiple patterns that will be resolved. In maven projects, the plug-in derives the name of the file to read from your pom. For each maven module, only one file will be read.

      1. May 22, 2012

        Matt Cheely says:

        It's a single-module maven project, so I guess I'm stuck with only analyzing a s...

        It's a single-module maven project, so I guess I'm stuck with only analyzing a single file. :(

        1. May 22, 2012

          Ulli Hafner says:

          No, just use the freestyle job type to build your maven project.

          No, just use the freestyle job type to build your maven project.

  17. Jul 12, 2012

    Klark_Hu says:

    Hi, I met a problem. after I added the checkstyle plugin downloaded as 3.27 ver...

    Hi,

    I met a problem. after I added the checkstyle plugin downloaded as 3.27 version. and i added the plugin to the .hudson\plugins. 

    but I restarted the web, and I can't see any information about this plugin under plugin manager in the web. What's up, can you give me tips for this.

    thanks,

    Klark

    1. Jul 12, 2012

      Ulli Hafner says:

      You need to install the plug-in analysis-core, too. See big note at top of this ...

      You need to install the plug-in analysis-core, too. See big note at top of this page!

      1. Jul 13, 2012

        Klark_Hu says:

        I install the checkstyle,analysis-core, but I didn't see them in pugin manager &...

        I install the checkstyle,analysis-core, but I didn't see them in pugin manager -> installed in the page.

      2. Jul 13, 2012

        Klark_Hu says:

        I add the checkstyle.hpi and analysis-core.hpi into .hudson/plugins folder. and ...

        I add the checkstyle.hpi and analysis-core.hpi into .hudson/plugins folder. and install them by web under plugin manager in the page.

        I thought it would be ok, but not, any tips should be welcome. thanks.

      3. Jul 13, 2012

        Klark_Hu says:

        SEVERE: Failed Initializing plugin checkstyle java.lang.NullPointerException at ...

        SEVERE: Failed Initializing plugin checkstyle
        java.lang.NullPointerException
        at hudson.PluginManager$2$1$2.run(PluginManager.java:313)
        at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146)
        at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259)
        at hudson.model.Hudson$4.runTask(Hudson.java:698)
        at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187)
        at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
        Jul 13, 2012 10:24:49 AM hudson.model.Hudson$5 onTaskFailed
        SEVERE: Failed Initializing plugin analysis-core
        java.lang.NullPointerException
        at hudson.PluginManager$2$1$2.run(PluginManager.java:313)
        at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146)
        at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259)
        at hudson.model.Hudson$4.runTask(Hudson.java:698)
        at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187)
        at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

        Jul 13, 2012 10:24:49 AM hudson.model.Hudson$5 onAttained
        INFO: Prepared all plugins

        Jul 13, 2012 10:24:48 AM hudson.model.Hudson$5 onTaskFailed
        SEVERE: Failed Loading plugin checkstyle
        java.io.IOException: Dependency analysis-core (1.41) doesn't exist
        at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:443)
        at hudson.PluginManager$2$1$1.run(PluginManager.java:296)
        at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146)
        at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259)
        at hudson.model.Hudson$4.runTask(Hudson.java:698)
        at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187)
        at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

        Jul 13, 2012 10:24:48 AM hudson.model.Hudson$5 onTaskFailed
        SEVERE: Failed Loading plugin analysis-core
        hudson.util.IOException2: Failed to load plugin instance for: analysis-core
        at org.hudsonci.inject.internal.plugin.SmoothiePluginStrategy.load(SmoothiePluginStrategy.java:193)
        at org.hudsonci.inject.internal.plugin.DelegatingPluginStrategy.load(DelegatingPluginStrategy.java:72)
        at hudson.PluginManager$2$1$1.run(PluginManager.java:297)
        at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146)
        at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259)
        at hudson.model.Hudson$4.runTask(Hudson.java:698)
        at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187)
        at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
        Caused by: java.lang.LinkageError: loader (instance of org/hudsonci/inject/internal/plugin/PluginClassLoader): attempted duplicate class definition for name: "org/apache/xerces/parsers/SAXParser"
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClassCond(Unknown Source)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at org.aspectj.weaver.bcel.ExtensibleURLClassLoader.defineClass(ExtensibleURLClassLoader.java:63)
        at org.aspectj.weaver.loadtime.WeavingURLClassLoader.defineClass(WeavingURLClassLoader.java:151)
        at org.aspectj.weaver.bcel.ExtensibleURLClassLoader.defineClass(ExtensibleURLClassLoader.java:97)
        at org.aspectj.weaver.bcel.ExtensibleURLClassLoader.findClass(ExtensibleURLClassLoader.java:52)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at hudson.ClassicPluginStrategy$DependencyClassLoader.findClass(ClassicPluginStrategy.java:426)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at org.xml.sax.helpers.NewInstance.newInstance(Unknown Source)
        at org.xml.sax.helpers.XMLReaderFactory.loadClass(Unknown Source)
        at org.xml.sax.helpers.XMLReaderFactory.createXMLReader(Unknown Source)
        at org.aspectj.weaver.loadtime.definition.DocumentParser.getXMLReader(DocumentParser.java:167)
        at org.aspectj.weaver.loadtime.definition.DocumentParser.saxParsing(DocumentParser.java:137)
        at org.aspectj.weaver.loadtime.definition.DocumentParser.parse(DocumentParser.java:117)
        at org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.parseDefinitions(ClassLoaderWeavingAdaptor.java:258)
        at org.aspectj.weaver.loadtime.DefaultWeavingContext.getDefinitions(DefaultWeavingContext.java:130)
        at org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.initialize(ClassLoaderWeavingAdaptor.java:161)
        at org.aspectj.weaver.loadtime.WeavingURLClassLoader.createAdaptor(WeavingURLClassLoader.java:171)
        at org.aspectj.weaver.loadtime.WeavingURLClassLoader.defineClass(WeavingURLClassLoader.java:132)
        at org.aspectj.weaver.bcel.ExtensibleURLClassLoader.defineClass(ExtensibleURLClassLoader.java:97)
        at org.aspectj.weaver.bcel.ExtensibleURLClassLoader.findClass(ExtensibleURLClassLoader.java:52)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at org.hudsonci.inject.internal.plugin.SmoothiePluginStrategy.loadPluginClass(SmoothiePluginStrategy.java:217)
        at org.hudsonci.inject.internal.plugin.SmoothiePluginStrategy.load(SmoothiePluginStrategy.java:188)
        ... 10 more

        Jul 13, 2012 10:24:47 AM hudson.model.Hudson$5 onAttained
        INFO: Listed all plugins

        Jul 13, 2012 10:24:47 AM hudson.model.Hudson$5 onAttained
        INFO: Started initialization

        Jul 13, 2012 10:24:47 AM hudson.PluginManager createPluginStrategy
        INFO: Plugin strategy: org.hudsonci.inject.internal.plugin.DelegatingPluginStrategy

        Jul 13, 2012 10:24:46 AM hudson.util.CharacterEncodingFilter init
        INFO: CharacterEncodingFilter initialized. DISABLE_FILTER: false FORCE_ENCODING: false

        Jul 13, 2012 10:24:46 AM hudson.WebAppMain contextInitialized

        1. Jul 13, 2012

          Ulli Hafner says:

          OK, I see. the plug-in analysis-core cannot be loaded. Which version of Jenkins ...

          OK, I see. the plug-in analysis-core cannot be loaded. Which version of Jenkins are you using?

          1. Jul 13, 2012

            Klark_Hu says:

            analysis-core  1.41 checkstyle 3.27 I tried many times, but did not work ...

            analysis-core  1.41

            checkstyle 3.27

            I tried many times, but did not work out.

            1. Jul 13, 2012

              Ulli Hafner says:

              Which version of Jenkins???

              Which version of Jenkins???

              1. Jul 13, 2012

                Klark_Hu says:

                hudson-2.2.1  

                hudson-2.2.1  

                1. Jul 13, 2012

                  Ulli Hafner says:

                  Maybe that is the problem. I haven't tested with Hudson quite a while now. Can't...

                  Maybe that is the problem. I haven't tested with Hudson quite a while now. Can't you upgrade to Jenkins?

                  1. Jul 13, 2012

                    Klark_Hu says:

                    Ok, can you please check my another problem below with maven. quite confused. t...

                    Ok, can you please check my another problem below with maven. quite confused.

                    thanks.

            2. Jul 13, 2012

              Ulli Hafner says:

              Latest: analysis-core 1.43, checkstyle 3.29

              Latest: analysis-core 1.43, checkstyle 3.29

  18. Jul 12, 2012

    Felipe Santos says:

    I´m having a problem I was wondering if anybody could help me with. The plugin ...

    I´m having a problem I was wondering if anybody could help me with.

    The plugin shows for example 5203 warnings and 2 new warnings.

    I click on the new warnings to see what they are and there are no new warnings.

    The numbers seem to always be off by at least 2.

    Any idea of what could be causing this? Is this an issue with the Static Code Analysis Plugin?

    I´m using version 3.29 of the Checkstyle Plugin and 1.42 of the Static Code Analysis Plugin.

    Thanks in advance

    Felipe

    1. Jul 13, 2012

      Ulli Hafner says:

      Which difference computation is used (checkbox in configuration)? Can you be mor...

      Which difference computation is used (checkbox in configuration)? Can you be more concrete, e.g. adding screenshots. Please use the issue tracker for such bugs, it is much easier to communicate using Jira...

      1. Aug 17, 2012

        Felipe Santos says:

        I´m using Compute new warnings (based on reference build), Use delta for ne...

        I´m using Compute new warnings (based on reference build), Use delta for new warnings, and the threshold = 0.

        I´m getting build fails all the time even when there are no new warnings. Can´t get screenshots because due to issues the plugin was turned off :(

        I wasn´t sure it was something I was doing wrong or an actual error, that´s why I ended up not opening and issue on Jira.

  19. Jul 13, 2012

    Klark_Hu says:

    I met another problem. for company net control, when I run   mvn arc...

    I met another problem.

    for company net control, when I run  

    mvn archetype:create -DgroupId=com.byread  -DartifactId=blogweb -DarchetypeArtifactId=maven-archetype-webapp -X

    it shows:

    No plugin found for prefix 'archetype' in the current project and in the plugin groups ..... available from the repositories.

    because I can't load plugin from net, so I need to put them into repository folder by myself. but i don't what is the archetype like.

    so that I can run that command.

    can you give me tips about this. Thanks.

    1. Jul 13, 2012

      Ulli Hafner says:

      Well this is a maven problem Please don't use the comments on the Checkstyle Je...

      Well this is a maven problem Please don't use the comments on the Checkstyle Jenkins plug-in for questions like this.

      1. Jul 13, 2012

        Klark_Hu says:

        Ok, I see

        Ok, I see

  20. Aug 31, 2012

    Max Spring says:

    On Jenkins 1.479 and Checkstyle plugin 3.30 I have a Maven job (goals: -U -B cle...

    On Jenkins 1.479 and Checkstyle plugin 3.30 I have a Maven job
    (goals: -U -B clean checkstyle:checkstyle findbugs:check cobertura:cobertura deploy)
    which succeeds but Jenkins still shows it failed and the jenkins.log shows the exception shown below.

    When I turn off "Publish Checkstyle analysis results", the problem disappears.

    What might be the root cause?
    Thanks!
    -Max

    Aug 31, 2012 12:26:48 PM hudson.ExpressionFactory2$JexlExpression evaluate
    WARNING: Caught exception evaluating: action.iconFileName!=null. Reason: java.lang.reflect.InvocationTargetException
    java.lang.reflect.InvocationTargetException
            at sun.reflect.GeneratedMethodAccessor225.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at org.apache.commons.jexl.util.PropertyExecutor.execute(PropertyExecutor.java:125)
            at org.apache.commons.jexl.util.introspection.UberspectImpl$VelGetterImpl.invoke(UberspectImpl.java:314)
            at org.apache.commons.jexl.parser.ASTArrayAccess.evaluateExpr(ASTArrayAccess.java:185)
            at org.apache.commons.jexl.parser.ASTIdentifier.execute(ASTIdentifier.java:75)
            at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:83)
            at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57)
            at org.apache.commons.jexl.parser.ASTNENode.value(ASTNENode.java:55)
            at org.apache.commons.jexl.parser.ASTExpression.value(ASTExpression.java:54)
            at org.apache.commons.jexl.parser.ASTExpressionExpression.value(ASTExpressionExpression.java:56)
            at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:80)
            at hudson.ExpressionFactory2$JexlExpression.evaluate(ExpressionFactory2.java:72)
            at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
            at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsBoolean(ExpressionSupport.java:71)
            at org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:97)
            at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
            at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:121)
            at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
            at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
            at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)
            at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
            at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
            at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
            at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
            at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
            at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:81)
            at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:146)
            at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
            at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
            at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98)
            at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
            at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
            at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
            at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
            at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
            at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98)
            at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
            at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
            at org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98)
            at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
            at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
            at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
            at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
            at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:81)
            at jenkins.model.ModelObjectWithContextMenu$ContextMenu$1.run(ModelObjectWithContextMenu.java:131)
            at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:63)
            at jenkins.model.ModelObjectWithContextMenu$ContextMenu.from(ModelObjectWithContextMenu.java:124)
            at jenkins.model.ModelObjectWithContextMenu$ContextMenu.from(ModelObjectWithContextMenu.java:113)
            at hudson.model.Actionable.doContextMenu(Actionable.java:137)
            at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288)
            at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
            at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
            at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
            at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
            at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:384)
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
            at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
            at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
            at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
            at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488)
            at org.kohsuke.stapler.Stapler.service(Stapler.java:162)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
            at winstone.ServletConfiguration.execute(ServletConfiguration.java:248)
            at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
            at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
            at com.cisco.step.jenkins.plugins.people.redirector.PeopleRedirectorPlugin$1.doFilter(PeopleRedirectorPlugin.java:91)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
            at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:206)
            at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:179)
            at net.bull.javamelody.PluginMonitoringFilter.doFilter(PluginMonitoringFilter.java:86)
            at org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:84)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
            at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:58)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
            at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
            at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
            at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
            at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:85)
            at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
            at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
            at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:63)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
            at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
            at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
            at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
            at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
            at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50)
            at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
            at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
            at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
            at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
            at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
            at winstone.RequestDispatcher.forward(RequestDispatcher.java:331)
            at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:215)
            at winstone.RequestHandlerThread.run(RequestHandlerThread.java:138)
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
            at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
            at java.util.concurrent.FutureTask.run(FutureTask.java:138)
            at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
            at java.lang.Thread.run(Thread.java:662)
    Caused by: java.lang.NullPointerException
            at hudson.plugins.analysis.core.AbstractResultAction.getIconFileName(AbstractResultAction.java:137)
            at hudson.plugins.analysis.core.MavenResultAction.getIconFileName(MavenResultAction.java:236)
            ... 132 more
    
    1. Sep 02, 2012

      Ulli Hafner says:

      I can't reproduce that bug, however I added a fix that should prevent that NPE. ...

      I can't reproduce that bug, however I added a fix that should prevent that NPE. It will be part of the next analysis-core release.

      1. Sep 17, 2012

        Max Spring says:

        Hi Ulli, with Checkstyle 3.31 and Analysis Collector 1.33 I don't see the proble...

        Hi Ulli,
        with Checkstyle 3.31 and Analysis Collector 1.33 I don't see the problem any longer.
        Thanks a lot!

      2. Oct 11, 2012

        Max Spring says:

        I ran into the same problem again. But now I think I got the root cause. There w...

        I ran into the same problem again.
        But now I think I got the root cause.
        There was a timezone discrepancy.
        Originally, the machine were configured for CDT.
        Then we changed it to PDT – at least we thought so.
        The OS had the proper timezone (PDT), but Jenkins still had (CDT).
        I didn't notice for a while.
        After I noticed, I adjusted the /etc/localtime symlink to point to the proper timezone.
        That fixed the problem.

  21. Sep 19, 2012

    Miquel Martin says:

    I could use some insight on this if you guys have a minute. I have a maven proj...

    I could use some insight on this if you guys have a minute.

    I have a maven project in jenkins. It includes a parent pom, a distinct aggregator pom, and a bunch of submodules. Checkstyle reports are fine for all of them except for the aggregator which, well aggregates all the underlying problems. Just to be clear, if I have 10 submodules with 5 warnings each, I'll get the aggregator module reporting 50 (duplicate) problems. This might be a checkstyle issue, and not the maven plugin, or maybe it's normal behavior. All advice welcome!

    1. Sep 19, 2012

      Ulli Hafner says:

      I'm not sure if I understand correctly. Can you please show your module structur...

      I'm not sure if I understand correctly. Can you please show your module structure? What is your expectation on the results? Are there checkstyle.xml files created from maven in the aggregator module?

  22. Oct 23, 2012

    phoe nix says:

    Excuse me, but an easy question: how to instal and use plugins?  I'm searc...

    Excuse me, but an easy question: how to instal and use plugins? 

    I'm searching to use checkstyle within a jenkins/linux/maven environnement. The checkstyle seems to be installed, but, when I launch a build on my projects (on which I konw there are rule violations), it says me that everything is ok!

    I cannot find also how to instal analysis-collector, because I don't see this exact name in the installed plugins.

    Moreover, I don't find any configuration part in Jenkins enabling me to use my own checkstyle.xml configuration file.

    If somebody can help me that way, thanks

    1. Oct 24, 2012

      Ulli Hafner says:

      Run checkstyle in your build Install checkstyle in Jenkins using the update m...
      1. Run checkstyle in your build
      2. Install checkstyle in Jenkins using the update manager
      3. Add checkstyle as post build step in your job configuration

      Please use the mailing lists for such basic questions, you will get faster feedback there.

  23. Sep 23, 2013

    Ravikumar Maddi says:

    Checkstyle working in Maven, but not working in Jenkins I have 7 projects total...

    Checkstyle working in Maven, but not working in Jenkins

    I have 7 projects total.

    1 parent and 6 child projects.

    Maven 3.0.5

    Maven checkstyle plugin

    Jenkins

    Jenkins checkstyle plugin

    Scenario-1: Checkstyle report for all projects.

    1. in parent pom i declared checkstyle plugin in <reporting> tag:

    – I run 'mvn clean site' command

    – It working both ways in eclipse with maven. and in Jenkins also.

    – Giving checkstyle reports for all 7 projects.
    Scenario-2: Checkstyle report for all projects except 2 projects.

    – I deleted <reporting> part in parent pom and i added.

    – I added in remaining 4 projects, i declared checkstyle plugin in <reporting> tag.

    – It working in eclipse but not working in Jenkins.

    My code: <reporting>
    <plugins>
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-checkstyle-plugin</artifactId>
    <version>2.10</version>
    <configuration>
    <configLocation>../parent-project/checkstyle.xml</configLocation>
    </configuration>
    </plugin>
    </plugins>
    </reporting>
    Senario-3:

    1. I deleted checkstyle plugin in parent
    2. I added checkstyle plugin in 4 needed projects same above code.
    3. In remaining 2 child projects I added like this. <reporting>
      <plugins>
      <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-checkstyle-plugin</artifactId>
      <version>2.10</version>
      <configuration>
      <skip>true</skip>
      </configuration>
      </plugin>
      </plugins>
    4. I run 'mvn clean site'
    5. It working in Maven as expected but not working in Jenkins.

    My meaning of 'not working in Jenkins' is, I installed Checkstyle plugin in Jenkins, In the Jenkins job i selected 'Publish Checkstyle analysis results' check box. In scenario-1 i am able to see the checkstyle link in the jenkins job page. And if i click on that all code violations reports are appearing. In other scenarios (2,3) the Checkstyle link also not appearing.

    Please help me how to make it working in Jenkins, even i skip few projects.

    In Checkstyle Jenkins plugin, I did not find any much configuration regarding poms, 

    I am not able to understand, why Checkstyle Jenkins plugin not accepting even Maven accepted.