Checkstyle
checkstyle.org
What it is
Checkstyle is a free Java source-code analyzer for programmers who follow a coding standard. It checks naming, imports, Javadoc, formatting, class design, and coding practices against configurable rules. You can select supplied Google Java Style, Sun Conventions, OpenJDK Style, or Doc Style configurations, or create your own. Checkstyle runs from its command-line tool or as an Ant task, with documented Maven and Gradle integrations. Listed IDE and CI integrations include Eclipse, Bamboo, GitHub Actions, Codacy, and Code Climate. It runs on Linux, macOS, and Windows. The current site says it parses Java features through Java 25; versions 13.x and 14.x require Java runtime 21 or newer. Analysis is single-file and source-level, without expression-type determination or a full inheritance hierarchy. Releases are available through GitHub releases and Maven Central, including a standalone all-in-one JAR. It is licensed under LGPL-2.1-or-later and supports only the latest version.
Spec sheet
- Purpose
- Checkstyle analyzes Java source code against configurable rules to help teams enforce coding standards.Read 10 Oct 2026 · checkstyle.org
- Security
- External DTD loading is disabled by default to prevent XXE attacks and unauthorized file-system or network access.Read 10 Oct 2026 · checkstyle.org
- License
- The project license is LGPL-2.1-or-later.Read 10 Oct 2026 · checkstyle.org
- Analysis scope
- Checkstyle performs single-file, source-level analysis and does not determine expression types or build a full inheritance hierarchy.Read 10 Oct 2026 · checkstyle.org
- Checks
- Checks cover naming, imports, Javadoc, formatting, class design, and coding practices.Read 10 Oct 2026 · checkstyle.org
- Configuration
- Users can choose supplied Google Java Style, Sun Conventions, OpenJDK Style, or Doc Style configurations, or create their own.Read 10 Oct 2026 · checkstyle.org
- Distribution
- The latest release is available from GitHub releases or Maven Central, and the site documents a standalone all-in-one JAR.Read 10 Oct 2026 · checkstyle.org
- IDE and CI integrations
- The site lists integrations and plugins for IDEs and CI tools, including Eclipse, Bamboo, GitHub Actions, Codacy, and Code Climate.Read 10 Oct 2026 · checkstyle.org
- Java support
- The current site states that Checkstyle parses Java language features introduced in Java 25 and below.Read 10 Oct 2026 · checkstyle.org
- Run methods
- Checkstyle can run through its command line tool or Ant task, and the site documents Maven and Gradle integrations.Read 10 Oct 2026 · checkstyle.org
- Runtime requirement
- The site lists Java runtime 21 and above for Checkstyle versions 13.x and 14.x.Read 10 Oct 2026 · checkstyle.org
- Support policy
- The project states that it supports only the latest version.Read 10 Oct 2026 · checkstyle.org
- Who it is for
- The project describes Checkstyle as a development tool for programmers writing Java code to a coding standard.Read 10 Oct 2026 · checkstyle.org
Plans and prices
Strong points and limits
Strong points
- Free plan at free
- Supports Linux, macOS, and Windows
- Custom rules and supplied style configurations
- Documented Maven and Gradle integrations
- IDE and CI integrations are listed
Limits
- Analysis is limited to single-file source checks
- Versions 13.x and 14.x require Java 21+
- Only the latest version is supported
Who it suits
It suits programmers and teams writing Java to a defined coding standard. It is also relevant to projects needing configurable checks in IDE or CI workflows.
Verdict
Checkstyle provides configurable Java style and practice checks with broad documented integration options. Its single-file analysis scope and Java runtime requirements should be considered before adoption.
Where Specifiction places it
- Linters#9 of 338.0
- Code Metrics Tools#6 of 158.1