Javaのプロジェクトを行うときに
コーディング規約を決めてCIでチェックする運用を行いたいが。
IDEAのformatterとCIでのチェックが揃っていないと、
その差分を手作業で修正する必要があり、面倒さを感じます。

このエントリでは、
IntelliJ IDEAのformatterと、GradleのChecksytleの両方に、
「Google Java Style」という規約を適用する手順を説明します。

Google Java Style
https://google.github.io/styleguide/javaguide.html

IDEAへのformatterの適用

IDEAへのformatterの適用は、以下のプラグインによって行います。

google-java-format | JET BRAINS PLUGINS
https://plugins.jetbrains.com/plugin/8527-google-java-format

IDEAのメニューを
Preferences... -> Plugins -> Browse Repositories...
とたどり、「Browse Repositories...」を開きます。
「google-java-format」で検索して、「Install」ボタンを押下します。

インストール完了後、
Preferences... -> Other Settings -> google-java-format Settings
を選び「Enable google-java-format」にチェックを入れます。

フォーマットを修正したいjavaファイルを開いて、
Option + Command + L でフォーマットを適用します。

GradleのCheckstyleへの規約の適用

CheckstyleのGitHubリポジトリに、
「Google Java Style」のCheckstyle用の設定ファイルが以下にあるので、これを適用します。

google_checks.xml | checkstyle | GitHub
https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml

ですが、Gradle 4.5.1環境で、上記の設定ファイルを実行しようとすると、
エラーが出てしまうので、一部修正します。
# おそらく、Checkstyleプラグインが最新のCheckstyleに対応していないのだと考えていますが。

https://gist.github.com/takemikami/18d5843b6700b846ecb9ffbea33a72f7

修正したファイルをgistに置いたので、
これを「config/checkstyle/checkstyle.xml」に配置します。

「build.gradle」に以下の行を追記します。

apply plugin: 'checkstyle'

以下のコマンドでCheckstyleを実行します。

gradle checkstyleMain

最後に、このコマンドをCIツールで実行するようにすれば、
面倒さを感じずにJavaプロジェクトへのコーディング規約を適用出来ると考えています。


(2018.3.8 追記)
設定ファイルを修正しなくても、
build.gradleにtoolVersionを指定すればそのまま適用出来ますね。
https://docs.gradle.org/4.6/dsl/org.gradle.api.plugins.quality.CheckstyleExtension.html

checkstyle {
    toolVersion '8.7'
}