Checkstyle

What Checkstyle is
Checkstyle is a free development tool for programmers who want Java source code to follow a coding standard. It checks source files against configurable rules covering naming, imports, Javadoc, formatting, class design, and coding practices. You can use supplied Google Java Style, Sun Conventions, OpenJDK Style, or Doc Style configurations, or create a custom configuration. Checkstyle runs through a command line tool or an Ant task, and its site documents Maven and Gradle integrations. Listed IDE and CI integrations include Eclipse, Bamboo, GitHub Actions, Codacy, and Code Climate. The project supports Linux, macOS, and Windows. Releases are available through GitHub releases and Maven Central, and a standalone all-in-one JAR is documented. The current site says Checkstyle parses Java language features introduced in Java 25 and earlier. Versions 13.x and 14.x require Java runtime 21 or later. Its analysis is limited to individual source files: it does not determine expression types or build a full inheritance hierarchy. The project uses the LGPL-2.1-or-later license and supports only its latest version. Checkstyle is listed as free, with a plan price of $0.
Who it suits
Checkstyle suits Java programmers and teams that want to apply a coding standard through configurable source checks. It fits workflows using command line, Ant, Maven, Gradle, IDE, or CI integrations.
What it does well
- Free to use under the LGPL-2.1-or-later license.
- Includes Google Java Style, Sun Conventions, OpenJDK Style, and Doc Style configurations.
- Supports custom rules.
- Documents command line, Ant, Maven, and Gradle usage.
- Lists IDE and CI integrations, including Eclipse and GitHub Actions.
What to know first
- Analysis is limited to single-file source checks.
- Does not determine expression types or build a full inheritance hierarchy.
- The project supports only its latest version.
- Versions 13.x and 14.x require Java runtime 21 or above.
Limits
Checkstyle performs single-file, source-level analysis and does not determine expression types or build a full inheritance hierarchy. The project supports only its latest version; versions 13.x and 14.x require Java runtime 21 or above.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| Checkstyle | Java source code analysis · configurable checks | Free |
As checkstyle.org lists them, read 10 Oct 2026. The maker's own page has the final word.
Getting started
- Visit the Checkstyle website.
- Download a release from GitHub releases or Maven Central, or use the documented standalone all-in-one JAR.
- Choose a supplied configuration or create your own rules.
- Run it from the command line or as an Ant task, or use the documented Maven or Gradle integrations.
- Connect it with a listed IDE or CI integration if that fits your workflow.
Verdict
Choose Checkstyle if you need free, configurable checks to help Java code follow a coding standard across command line, build, IDE, or CI workflows. Look elsewhere if your analysis requires expression type resolution or a full inheritance hierarchy.
Questions
Is Checkstyle free?
Yes. It has a free plan listed as free.
Which operating systems does it support?
Checkstyle supports Linux, macOS, and Windows.
Which Java language features can it parse?
The current site says it parses Java language features introduced in Java 25 and below.
What Java runtime does it require?
Versions 13.x and 14.x require Java runtime 21 and above.
Is Checkstyle open source?
The project is licensed under LGPL-2.1-or-later.
How can it be run or integrated?
It can run from the command line or as an Ant task; the site also documents Maven and Gradle integrations. Listed IDE and CI integrations include Eclipse, Bamboo, GitHub Actions, Codacy, and Code Climate.
Facts from Checkstyle's own pages
- Analysis scope
- Checkstyle performs single-file, source-level analysis and does not determine expression types or build a full inheritance hierarchy. · checkstyle.org, 10 Oct 2026
- Checks
- Checks cover naming, imports, Javadoc, formatting, class design, and coding practices. · checkstyle.org, 10 Oct 2026
- Configuration
- Users can choose supplied Google Java Style, Sun Conventions, OpenJDK Style, or Doc Style configurations, or create their own. · checkstyle.org, 10 Oct 2026
- Distribution
- The latest release is available from GitHub releases or Maven Central, and the site documents a standalone all-in-one JAR. · checkstyle.org, 10 Oct 2026
- IDE and CI integrations
- The site lists integrations and plugins for IDEs and CI tools, including Eclipse, Bamboo, GitHub Actions, Codacy, and Code Climate. · checkstyle.org, 10 Oct 2026
- Java support
- The current site states that Checkstyle parses Java language features introduced in Java 25 and below. · checkstyle.org, 10 Oct 2026
- License
- The project license is LGPL-2.1-or-later. · checkstyle.org, 10 Oct 2026
- Purpose
- Checkstyle analyzes Java source code against configurable rules to help teams enforce coding standards. · checkstyle.org, 10 Oct 2026
- Run methods
- Checkstyle can run through its command line tool or Ant task, and the site documents Maven and Gradle integrations. · checkstyle.org, 10 Oct 2026
- Runtime requirement
- The site lists Java runtime 21 and above for Checkstyle versions 13.x and 14.x. · checkstyle.org, 10 Oct 2026
- Security
- External DTD loading is disabled by default to prevent XXE attacks and unauthorized file-system or network access. · checkstyle.org, 10 Oct 2026
- Support policy
- The project states that it supports only the latest version. · checkstyle.org, 10 Oct 2026
- Who it is for
- The project describes Checkstyle as a development tool for programmers writing Java code to a coding standard. · checkstyle.org, 10 Oct 2026
Where Checkstyle stands on Freedom251
- Linters#7 of 33