CCFinderSW
github.com
What it is
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.
Spec sheet
- Purpose
- CCFinderSW is a token-based code clone detection tool that detects similar code fragments and outputs clone pairs.Read 9 Oct 2026 · github.com
- License
- The repository license file includes the MIT License for CCFinderSW and a BSD 3-clause license for ANTLR components.Read 9 Oct 2026 · github.com
- Founded
- 2017Read 28 Sep 2026 · github.com
- Affiliation
- The README lists the author's affiliation as the Graduate School of Information Science and Technology, Osaka University, Osaka, Japan.Read 4 Oct 2026 · github.com
- Author
- The repository identifies Yuichi Semura as the author.Read 4 Oct 2026 · github.com
- Bundled libraries
- The README says the software contains libraries distributed under Apache License 2.0.Read 4 Oct 2026 · github.com
- Clone matching
- The README says it excludes clone pairs containing inserted or deleted sentences.Read 9 Oct 2026 · github.com
- Clone types
- Without a reserved-word list, the tool detects type 1 clones; with one, it detects type 1 and type 2 clones.Read 9 Oct 2026 · github.com
- Command line
- The usage guide shows running the tool from the command line with a source directory, language, and output file arguments.Read 4 Oct 2026 · github.com
- Detection behavior
- It excludes clone pairs that contain inserted or deleted sentences.Read 4 Oct 2026 · github.com
- Detection threshold
- The minimum clone token threshold defaults to 50 and can be changed with the -t argument.Read 9 Oct 2026 · github.com
- Download
- The repository provides a CCFinderSW-1.0.zip download.Read 4 Oct 2026 · github.com
- Encoding
- The command line supports Shift-JIS, UTF-8, EUC-JP, and automatic encoding recognition.Read 9 Oct 2026 · github.com
- Execution
- The tool runs from the command line and recommends Java 8 or later.Read 9 Oct 2026 · github.com
- Language configuration
- Language-specific lexical analysis is configured through optional files that users can modify.Read 9 Oct 2026 · github.com
- Language handling
- It tailors lexical analysis to each language using optional files that users can modify.Read 4 Oct 2026 · github.com
- Language limitation
- It does not use separate lexical analysis mechanisms for each language, and its lexer algorithm is not optimized for each language.Read 4 Oct 2026 · github.com
- Language setup requirement
- Execution requires a comment rule file for the target language; a reserved-word list is optional but recommended.Read 9 Oct 2026 · github.com
- Output details
- CCFinderSW output can represent clone information as pairs or sets in a text file.Read 9 Oct 2026 · github.com
- Output formats
- It can output clone data in CCFinder, CCFinderX, CCFinderSW text, or JSON formats.Read 9 Oct 2026 · github.com
- Runtime
- The project recommends Java 8 or later and says the program is implemented only in Java.Read 4 Oct 2026 · github.com
- Support and limitations
- The documentation provides troubleshooting instructions, while its PrettyPrinter and MetricsFiltering command-line arguments are marked not implemented.Read 9 Oct 2026 · github.com
- Test platform
- The README lists Windows 10 Pro as its test environment.Read 4 Oct 2026 · github.com
- Viewer compatibility
- Clone pair output can be read by Gemini or CCFX.Read 9 Oct 2026 · github.com
- Viewers
- The clone pair output can be read by Gemini or CCFX.Read 4 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Free and MIT-licensed
- Supports four output formats
- Threshold defaults to 50 and is adjustable
- Can detect type 1 and type 2 clones
- Clone-pair output works with Gemini or CCFX
Limits
- Windows is the only listed platform
- Requires a comment rule file for each target language
- Lexer is not optimized for each language
- PrettyPrinter and MetricsFiltering are not implemented
Who it suits
CCFinderSW suits developers who want a self-hosted command-line tool for finding token-based code clones and can configure language rule files. It is aimed at Windows users with Java 8 or later.
Verdict
CCFinderSW offers configurable token-based clone detection and several output formats at no software cost. Its command-line setup requires language rules, and its lexer has documented language-specific limitations.
Where Specifiction places it
- Code Clone Detection Tools#1 of 238.6