Skip to content
SPECIFICTION
Get listed

NDepend vs PMD

NDepend

ndepend.com

PMD

pmd.github.io

Side by side

FigureNDependPMD
Price from—Free
Free plan—Yes
Free trialYes—
Open source——
WindowsYesYes
macOSYesYes
LinuxYesYes
APIYes—
Self-hosted—Yes
Plans published41
Spec score · Code Complexity Analyzers7.8 (#8)8.3 (#6)
Spec score · Static Analysis Tools7.7 (#20)8.2 (#12)
Operating systemsThe download page says the redistributable is suitable for Windows, macOS, and Linux; the Developer edition runs only on Windows.The documentation provides execution instructions for Linux/Unix and Windows, using pmd or pmd.bat.
PurposeNDepend is a .NET code quality and security analysis tool that provides insight into codebases for developers, architects, and executives.PMD is an extensible cross-language static code analyzer that finds common programming flaws.

Plans

NDepend

  • NDepend Azure DevOps / TFS ExtensionPrice not published
  • NDepend for Build MachinePrice not published
  • NDepend for DeveloperPrice not published
  • NDepend GitHub ActionPrice not published

NDepend pricing →

PMD

  • PMDFree

PMD pricing →

In their own words

NDepend

NDepend has no write-up on Specifiction yet; its figures are above.

Visit ndepend.com

PMD

PMD is a free, extensible static code analyzer that checks source code for programming flaws such as unused variables, empty catch blocks, and unnecessary object creation. It includes more than 400 built-in rules, and teams can write custom rules in Java or XPath. Its bundled CPD tool finds duplicated code across many programming languages. PMD checks source directories from the command line and can run as a Maven, Ant, Gradle, or bld build operation. Supported languages include Java, JavaScript, Salesforce Apex and Visualforce, Kotlin, Swift, Modelica, PL/SQL, Apache Velocity, JSP, WSDL, Maven POM, HTML, XML, and XSL; Scala is supported without Scala rules. It runs on Linux, macOS, and Windows and requires Java 8 or above. For CI, its GitHub Action can create SARIF reports and fail builds based on violation counts; documentation also covers GitLab, Jenkins, and Bamboo integrations. IDE integrations include Eclipse, IntelliJ IDEA, and Visual Studio Code, though some listed plugins are not actively maintained. Only the latest major version is actively developed.

Visit pmd.github.io