Clone this repo:
  1. 9dc8c43 checkstyle: add junitparams to ImportOrder by Tom Bergan · 7 weeks ago androidx-core-performance-release androidx-wear-wear-tooling-preview-release main master ub-automotive-master-20231011 ub-automotive-master-20231102
  2. e645823 Merge Android 14 by Xin Li · 8 weeks ago
  3. 846680a Fix checkstyle to include spacing between static imports. am: 2511a1b15a by Pat Manning · 3 months ago
  4. 2511a1b Fix checkstyle to include spacing between static imports. by Pat Manning · 3 months ago
  5. 606dc50 Allow missing javadoc for tests am: 5b129846c5 by Sorin Basca · 3 months ago


Checkstyle is used by developers to validate Java code style and formatting, and can be run as part of the pre-upload hooks.

Running it

It can be invoked in two ways.

  1. To check style of entire specific files: -f FILE [FILE ...]
  2. To check style of the lines modified in the latest commit:

Projects used


A development tool to help programmers write Java code that adheres to a coding standard.


Git-lint is a tool to run lint checks on only files changed in the latest commit.

  • URL:
  • Version: 0.0.8
  • License: Apache 2.0
  • License File: gitlint/LICENSE
  • Local Modifications:
    • Downloaded gitlint/ and git/ files individually.

Pre-upload linting

To run checkstyle as part of the pre-upload hooks, add the following line to your PREUPLOAD.cfg:

checkstyle_hook = ${REPO_ROOT}/prebuilts/checkstyle/ --sha ${PREUPLOAD_COMMIT}

Note that checkstyle does not always agree with clang-format, and so it's best to only have one enabled for Java.

Disabling Clang Format for Java

In .clang-format add the following to disable format checking and correcting for Java:

Language: Java
DisableFormat: true
SortIncludes: false

In some versions of clang-format, DisableFormat doesn't stop the sorting of includes. So to fully disable clang-format from doing anything for Java files, both options are needed.