Saturday, October 24, 2026 4,350 lists 78,096 records on file
List your app or device

  1. Home
  2. Plagiarism Checkers
  3. JPlag

JPlag

Karlsruhe, Germany

What it is

JPlag is free, open-source software for finding pairwise similarities among programs to help detect source-code plagiarism and collusion. It examines program syntax and structure in submitted code rather than checking the internet. The project describes student programming exercises as a typical use and also notes detecting duplicated or stolen software parts. Supported inputs include Java, C, C++, C#, Python, JavaScript, TypeScript, Go, Kotlin, R, Rust, Swift, Scala, LLVM IR, Scheme, EMF, SCXML, text, and multi-language input. You can run JPlag from its command-line interface or call it through a Java API, including as a Maven Central dependency in Java projects. Analysis runs locally, with source code and results kept from external transmission according to the project. A bundled report viewer opens generated or existing reports. Starter code can be excluded, matching sensitivity can be adjusted, and reports can be exported as JPlag or CSV files. Java SE 25 is required.

For and against

For

  • Free and open-source
  • Supports many programming languages
  • Runs analysis locally
  • Command-line and Java API access
  • Starter-code exclusion available

Against

  • Requires Java SE 25
  • Does not compare code with the internet
  • Lower sensitivity can create false positives
  • Top report list defaults to 2500 pairs

The verdict

JPlag provides local, syntax-focused similarity analysis across a broad language list. Its Java requirement and lack of web-source matching matter when choosing a plagiarism workflow.

Who it suits

JPlag suits educators checking programming assignments and teams looking for duplicated software components. It is aimed at Linux, self-hosted, API, and local workflows.

Plans and prices

JPlag

Free

Open-source software; runs locally; requires Java SE 25

Every plan, in full

On the record

Data handling
The project states that analysis runs locally and that source code and plagiarism results are not uploaded or sent externally.github.com · read 11 Oct 2026
Exclude starter code
A base-code directory can be specified so matches also present in the shared template are ignored.github.com · read 11 Oct 2026
How it compares
JPlag analyzes program syntax and structure and is designed to find similarities among submitted programs; it does not compare them with the internet.github.com · read 11 Oct 2026
Integration
JPlag is available as a dependency from Maven Central for inclusion in Java projects.github.com · read 11 Oct 2026
Purpose
JPlag finds pairwise similarities among programs to detect source-code plagiarism and collusion.github.com · read 11 Oct 2026
Report limit
The default report shows at most 2500 comparison pairs in its top list and code comparisons, configurable with the -n option.github.com · read 11 Oct 2026
Report viewer
Since version 6.0.0, the report viewer is bundled with JPlag and can open generated or existing reports.github.com · read 11 Oct 2026
Requirements
The project README says Java SE 25 is needed to run or build JPlag.github.com · read 11 Oct 2026
Run options
JPlag can be run through its command-line interface or called programmatically through its Java API.github.com · read 11 Oct 2026
Sensitivity setting
The minimum matching token length can be adjusted; lower values increase sensitivity but may cause more false positives.github.com · read 11 Oct 2026
Support
The project directs users to report bugs and issues and provides [email protected] for other inquiries.github.com · read 11 Oct 2026
Supported languages
The project lists support for Java, C, C++, C#, Python, JavaScript, TypeScript, Go, Kotlin, R, Rust, Swift, Scala, LLVM IR, Scheme, EMF, SCXML, text, and multi-language input.github.com · read 11 Oct 2026
Typical users
The project says it is typically used to detect copying of student programming exercises and can also identify duplicated or stolen software parts.github.com · read 11 Oct 2026

Alternatives to JPlag

Every alternative, ranked