Skip to content
SPECIFICTION
Get listed

PMD vs QuickDup

PMD

pmd.github.io

QuickDup

github.com

Side by side

FigurePMDQuickDup
Price fromFree—
Free planYes—
Free trial——
Open source——
WindowsYesYes
macOSYesYes
LinuxYesYes
Self-hostedYes—
Plans published10
Spec score · Code Clone Detection Tools8.1 (#3)6.9 (#20)
InstallationPMD requires Java 8 or above and is distributed as a ZIP archive containing PMD and CPD.The README provides installer commands for Linux and macOS, a PowerShell installer for Windows, and installation from source with Go.
LanguagesPMD focuses mainly on Java and Apex and supports 16 other languages, including JavaScript, Kotlin, Swift, and XML.The README lists comment-prefix support for languages including Go, C/C++, Java, JavaScript/TypeScript, C#, Python, Ruby, SQL, Lua, and others.
LicenseThe project identifies its license as BSD-style.QuickDup is released under the MIT License.
PurposePMD is an extensible cross-language static code analyzer that finds common programming flaws.QuickDup is a structural code clone detector that finds duplicate code patterns using indent-delta fingerprinting and is designed to generate candidates for AI-assisted code review.

Plans

PMD

  • PMDFree

PMD pricing →

QuickDup

No plans published.

QuickDup pricing →

In their own words

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

QuickDup

QuickDup is a repository code clone detector that finds candidate duplicate patterns using changes in indentation and the first word on each line. It skips comments and blank lines, tokenizes source lines and uses Jaccard similarity to filter patterns below a default 75% threshold. It does not parse abstract syntax trees. Detection options include normalized-indent, word-indent, word-only and inlineable strategies. The README lists comment-prefix detection for languages including Go, C and C++, Java, JavaScript and TypeScript, C#, Python, Ruby, SQL, Lua and MATLAB. QuickDup can emit GitHub Actions annotations for inline pull request comments and restrict them to files changed against a Git reference. Results are written as machine-readable JSON in a .quickdup directory. Incremental caching is available only for the word-indent strategy; other listed strategies re-parse files on each run. The README reports processing about 100,000 lines in about 500 ms on 8 cores. QuickDup is free under the MIT License, with installers for Linux, macOS and Windows, or installation from source with Go.

Visit github.com