CCFinderSW vs PMD
CCFinderSW
github.comPMD
pmd.github.ioSide by side
| Figure | CCFinderSW | PMD |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | — | Yes |
| Linux | — | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · Code Clone Detection Tools | 8.6 (#1) | 8.1 (#3) |
| License | The repository license file includes the MIT License for CCFinderSW and a BSD 3-clause license for ANTLR components. | The project identifies its license as BSD-style. |
| Purpose | CCFinderSW is a token-based code clone detection tool that detects similar code fragments and outputs clone pairs. | PMD is an extensible cross-language static code analyzer that finds common programming flaws. |
Plans
In their own words
CCFinderSW
CCFinderSW is a free, open-source command-line tool that detects similar code pairs through token-based clone matching. It takes a source directory, a language, and an output file as command-line arguments. The default minimum clone-token threshold is 50 and can be changed with the -t argument. Output can use CCFinder, CCFinderX, CCFinderSW text, or JSON formats, and clone-pair results can be read by Gemini or CCFX. A comment rule file is required for the target language; a reserved-word list is optional but recommended. Without that list, the tool detects type 1 clones; with it, it detects type 1 and type 2 clones. It excludes pairs containing inserted or deleted sentences. The implementation is Java-only, and the project recommends Java 8 or later. Windows is the listed platform, with Windows 10 Pro named as its test environment. The repository offers a CCFinderSW-1.0.zip download and includes an MIT license for the project; bundled libraries use Apache License 2.0.
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.