PMD (software)

PMD
Stable release
5.8.1 / 1 July 2017 (2017-07-01)
Repository github.com/pmd/pmd
Development status Active
Written in Java
Operating system Windows, Linux, OS X
Type Static program analysis tool
License BSD License, Apache License 2.0, GNU Lesser General Public License[1]
Website pmd.github.io

PMD is a static Java source code analyzer. It uses rule-sets to define when a piece of source is erroneous. PMD includes a set of built-in rules and supports the ability to write custom rules. PMD does not report compilation errors, as it only can process well-formed source files. Issues reported by PMD are rather inefficient code, or bad programming habits, which can reduce the performance and maintainability of the program if they accumulate.

While PMD does not officially stand for anything, it has several unofficial names, the most appropriate probably being Programming Mistake Detector.

Features

PMD is able to detect flaws or possible flaws in source code, like:

License

PMD is released under a BSDish license while parts of it are under Apache License 2.0 and the LGPL.[1]

Copy/Paste Detector (CPD)

The Copy/Paste Detector (CPD) is an add-on to PMD that uses the Rabin–Karp string search algorithm to find duplicated code. CPD works with Java, JSP, C, C++, Fortran, PHP, and C# code.

Plugins

PMD has plugins for JDeveloper, Eclipse, jEdit, JBuilder, Omnicore's CodeGuide, NetBeans/Sun Studio, IntelliJ IDEA, TextPad, Maven, Ant, Gradle, Gel, JCreator, Hudson, Jenkins, SonarQube and Emacs.

See also

References

  1. 1 2 "License". 18 January 2015. Retrieved 13 August 2015.


This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.