PMD (software)
free static software analysis tool

PMD is an open source static source code analyzer that reports on issues found within application code. PMD includes built-in rule sets and supports the ability to write custom rules. PMD does not report compilation errors, as it only can process well-formed source files. Rather, PMD is designed to detect inefficient code or bad programming habits, which can reduce the performance and maintainability of the program if they accumulate. It can analyze files written in Java, JavaScript, Apex and Visualforce, PLSQL, Apache Velocity, XML, and XSL.
While PMD does not officially stand for anything, several retro acronyms have been suggested, including for instance Programming Mistake Detector and Project Meets Deadline.
Features
PMD is able to detect flaws or possible flaws in source code, like:
Bugs—Empty try/catch/finally/switch blocks.
Dead code—Unused local variables, parameters and private methods.
Empty if/while statements.
Overcomplicated expressions—Unnecessary if statements, for loops that could be while loops.
Suboptimal code—Wasteful String/StringBuffer usage.
“PMD (software)” enters the record as free static software analysis tool. Crown Archives preserves that source wording while asking what software, free and static can confirm, complicate or overturn.
Why this record matters
“PMD (software)” is worth following because a concise public description often conceals a longer documentary argument. Here, software, free and static provides the most credible route into that argument.
Datasets, specimens, observations and peer-reviewed methods provide the appropriate test for the technical claims summarized here. The source revision retrieved here is dated Dec 30, 2025. The linked authority identifier is Q2044404. 2 of 2 selected statements include explicit references; 0 carry qualifiers and 0 use preferred rank.
Scientific names, classifications and consensus can change while older terminology persists in catalogues and historical literature. The lead is largely declarative, so disagreement and counter-evidence require a deliberate search beyond the opening account. Authority statements aid reconciliation but still require their own references, qualifiers and ranks to be checked.
How to read it
Check terminology, classification and the date of the cited evidence. Scientific names and technical consensus can change while older records retain historical value.
- Current terminology
- Classification context
- Finding cited technical literature
Primary datasets, specimen catalogues, standards bodies and the most recent peer-reviewed literature.
Three-step research path
- Establish the record: confirm the title “PMD (software)”, its source revision and the description used here.
- Expand the search: follow PMD (software) primary sources, PMD (software) archive and software research across catalogues and specialist indexes.
- Test the account: compare the strongest cited source with the responsible institution’s current record and note any disagreement.
Questions for further research
- Which source most directly establishes the central claim about “PMD (software)”?
- Is the terminology current, historical or disputed?
- Has classification or technical consensus changed since the cited source?
Search terms from this dossier
This entry incorporates text from “PMD (software)” on English Wikipedia. Contributors are listed in the page history. Text is available under the Creative Commons Attribution-ShareAlike 4.0 License. Selected authority identifiers and statements are retrieved from Wikidata under CC0; their references and qualifiers remain part of the verification path.