Skip to content
Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. By default it supports the Google Java Style Guide and Sun Code Conventions, but is highly configurable. It can be invoked with an ANT task and a command line program.
Java HTML Shell GAP JavaScript CSS
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.ci Issue #7363: add AvoidNoArgumentSuperConstructorCallCheck Jan 17, 2020
.circleci infra: disable should_run_job till we find a reason of failure #7313 Dec 4, 2019
.dependabot Issue #7224: dependabot config to configure commit message Dec 10, 2019
.github Issue #7224: dependabot config to configure commit message Dec 10, 2019
config minor: suppress pmd violation on long by design PackageObjectFactory.… Jan 17, 2020
src Issue #7475: resolve Cognitive Complexity cases above 20 Jan 18, 2020
.gitattributes Issue #6558: set git attributes for all files to enforce LF line endings Sep 15, 2019
.gitignore minor: change description for .ci-temp folder May 23, 2018
.travis.yml Issue #5604: activation of sonar validation in PRs Jan 8, 2020
Jenkinsfile Issue #5941: remove all unnecessary spaces on end of line Jun 30, 2019
LICENSE minor: update for license wording from https://www.gnu.org/licenses/o… Jan 7, 2017
LICENSE.apache20 chmod all files to 644 Oct 5, 2013
README.md Issue #7423: new sonarqube project was created in checkstyle organiza… Jan 4, 2020
RIGHTS.antlr Issue #5941: remove all unnecessary spaces on end of line Jun 30, 2019
appveyor.yml Issue #7330: return exit code from appveyor.bat Dec 7, 2019
buddy.yml Issue #5793: remove clone_depth from buddy.yml May 14, 2018
codeship-services.yml Issue #3807: codeship pro parallel May 5, 2018
codeship-steps.yml config: let codeship run on branches to be used in PRs from the same … May 30, 2018
pom.xml Issue #7492: enforce jdk 1.8 by maven enforcer plugin Jan 18, 2020
release.sh minor: move variables above echo to ease commenting out mvn phases in… Jul 27, 2019
shippable.yml Issue #7450: match image version with image defined in 'Node Pools' Jan 9, 2020
wercker.yml config: enable sonar build on master and PRs Jan 10, 2020

README.md

Members chat: Contributors chat:

Checkstyle is a tool for checking Java source code for adherence to a Code Standard or set of validation rules (best practices).

The latest release version can be found at GitHub releases or at Maven repo.

Each-commit builds of maven artifacts can be found at Maven Snapshot repository .

Documentation is available in HTML format, see https://checkstyle.org/checks.html.

Build instructions and Contribution

Build instructions

Setup IDE for development

Explanation on how to create your own module

Verification of code quality

Sending Pull Request

Report Issue

Continuous integration and Quality reports

Travis (Linux & MacOS build): AppVeyor (Windows build):

Quality reports: https://checkstyle.org/project-reports.html

JavaScript, CSS and Java source file analysis on Codacy:

Feedback/Support

Please send any feedback to https://groups.google.com/forum/?hl=en#!forum/checkstyle

Questions and Answers from community:

Bugs and Feature requests (not the questions): https://github.com/checkstyle/checkstyle/issues

Support/Sponsor checkstyle

If you want to speed up fixing of issue and want to encourage somebody in internet to resolve any issue:

Licensing

This software is licensed under the terms in the file named "LICENSE" in this directory.

The software uses the ANTLR package (https://www.antlr.org/). Its license terms are in the file named "RIGHTS.antlr" in this directory.

This product includes software developed by The Apache Software Foundation (http://www.apache.org/).

The software uses the Logging and Beanutils packages from the Apache Commons project (http://commons.apache.org/). The license terms of these packages are in the file named "LICENSE.apache20" in this directory.

The software uses the Google Guava Libraries (https://github.com/google/guava/). The license terms of these packages are in the file named "LICENSE.apache20" in this directory.

The software uses the Picocli Library (https://github.com/remkop/picocli/). Its license terms are in the file named "LICENSE.apache20" in this directory.

You can’t perform that action at this time.