PMD Plugin

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

Description


 
The PMD plug-in scans for pmd.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
  • Trend reports showing the number of warnings in corresponding colors
    • Severity Trend: visualizes the number of warnings per severity
    • Threshold Trend: visualizes the number of warnings below and above the health thresholds
  • 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 PMD 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
  • Works with the freestyle and native m2 build option of Hudson (activated on goal pmd:pmd or site)
  • Localization available for: DE (Please help to localize findbugs 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 Hudson 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

Release 1.11:

  • Show spinner image during loading of tab content.
  • Added number of items in the label of a tab.

Release 1.10:

  • Added dynamic loading of the tab content in the detail pages.

Release 1.9:

Release 1.8:

  • Added different help texts for maven or freestyle configuration
  • Parsing of ant build.xml or maven pom.xml files is now only done if the build runs with the corresponding runner (issue #1898)
  • Ignore maven projects without target folder (issue #1813)
  • Reduced mermory footprint of parser (issue #1960)
  • Fixed NPE during computation of new warnings (issue #2093)
  • "Zero warnings since build #x" indicator should work correctly now (issue #1533)
  • Height of trend graph can be changed for the m2 project type, too (issue #2115)

Release 1.7:

  • New file overview page that shows the distribution per file
  • Added source code links to warnings table
  • Show line number of files in all warning detail views (issue #1974)
  • Improved layout (css) of the tab

Release 1.6:

  • New result UI with drill-down and statistics of modules, packages, severities, categories, types, overview, details, fixed and new warnings
  • Added parsing of ANT build.xml files to extract the project name (issue #1560)
  • Improved parsing of Java files to extract the package name (issue #1828, issue #1829)

Release 1.5:

  • Fixed update of configuration if the PMD plug-in is used in conjunction with violations plug-in (report)

Release 1.3:

  • Fixed backward compatibility with Hudson 1.180

Release 1.2:

  • Added m2 report aggregation of sub-modules and the main project (issue #1602,issue #1522)
  • Added expandable advanced section in plug-in configuration screen
  • Added customizable height of trend graph (to prevent scrolling on the main page)
  • Removed filename pattern for maven2 builds, since this information is retrieved from the pom
  • Fixed bug in trend report generation if build has been terminated without creating the PMD results
  • Fixed issue #1560: Generate an unique module name if the pom.xml do contain duplicate names
  • Fixed issue #1500: Fixed wrong initialization of cookie (for trend report toggle graph)
  • Fixed issue #1547: Don't start publisher if build has been canceled

Release 1.1:

  • Added drill-down support for warning severities (issue #733)
  • Module statistics now shows module names of pom.xml for maven projects (rather than the module path segment)
  • Fixed issue #1468: Fixed broken trend reports during a running build
  • Fixed issue #1501: Replaced link to results of running build to results of last finished build
  • Added french localization for messages (thanks to Eric Lefevre)

Release 1.0:

Labels

  Edit Labels