Suggestions appear as you type. Use the up and down arrows to choose one and Enter to open it.

This page's audience our own tag's counts — open to see them
–Visits
–Page views
–Clicks to vendors
–Time on page
–Reading now
Clicks to vendors, by tool
  • –
Top countries
  • –
Devices
  • –

– · visits, page views and clicks counted by our own tag, which counts more than our checked analytics; every figure rounded down · how we count

PMD review

A broad, open-source linter for teams managing static analysis across 16 languages.

8.3/10Editor score
PMD8.3 Visit PMD

Reviewed by iTechGuides Editors · Editorial team · Updated Oct 2026

PMD is an open-source, extensible static code analyzer for developers and development teams working across multiple programming languages. Its published capabilities cover 16 languages and include checks for common programming flaws such as unused variables, empty catch blocks, and unnecessary object creation. The tool is a strong fit for organizations that want one linter program spanning varied codebases, with the ability to extend analysis through custom Java or XPath rules.

PMD’s ecosystem fit is a central strength. It can run from the command line and integrates with Maven, Ant, Gradle, and bld, giving teams several ways to add analysis to existing build processes. IDE integrations are available for Eclipse, IntelliJ IDEA, and Visual Studio Code. CI support includes GitHub Actions, GitLab, Jenkins, and other CI tools, so PMD can be incorporated into both local development and automated checks. These integrations make it suitable for teams that want static analysis close to coding, builds, and pull-request workflows.

The standout feature is the combination of broad built-in coverage and extensibility. PMD provides 400+ rules, security rules for issues such as hard-coded cryptographic keys, and CPD for detecting duplicated code. The command-line analyzer and rule designer support teams that need repeatable checks beyond a fixed default configuration. PMD is a good choice for multilanguage static-analysis programs that value open-source distribution, custom rules, and build or CI integration. Teams seeking a workflow centered on verified autofix capabilities should consider a tool whose documented feature set makes that workflow explicit.

PMD pros and cons

  • Where it wins
    • 400+ built-in rules across 16 supported languages
    • Custom Java and XPath rules plus CPD duplicate-code detection
    • Integrates with major build tools, IDEs, and CI workflows
  • Where it doesn't
    • Autofix is not part of the stated core capabilities
    • Its breadth may require managing rules across multiple languages
    • Platform coverage is listed as Windows, Linux, and self-hosted

PMD fact sheet, pricing and score →

Advertiser disclosure: iTechGuides is reader-supported. Vendors can pay for top positions in our rankings and for a place on other products' pages, and we may earn a commission when you click some links. Bought places stand at the number bought; this page and our disclosure say so. Paying vendors may get a fuller, more detailed review from our editors, and that review can change their score. How we rank.

Last updated · How we research and update