Help us understand the problem. What is going on with this article?

Java - IntelliJ IDEAにCheckStyleプラグインを導入し、フォーマッタに反映する

More than 1 year has passed since last update.

CheckStyleの定義を意識してコードを書かず、Intelli IDEAのフォーマッタでほとんど事が済むようにしておく。

checkstyle.xmlを作成

そのプロジェクトで使用するものを作成しておく。

IntelliJ IDEA プラグイン 「CheckStyle-IDEA」の導入

手順

  1. IntelliJ IDEAを開く
  2. Preferencesを開く
  3. PlugInsを開く
  4. CheckStyleで検索し、「CheckStyle-IDEA」を選ぶ
  5. インストールボタンをクリックする
  6. IntelliJ IDEAを再起動する
  7. PreferencesにCheckstyleの項目が増えている

イメージ

スクリーンショット 2018-06-23 13.00.15.png

CheckStyle-IDEAにcheckstyle.xmlの定義を使う

  1. PreferencesのCheckstyleを開く
  2. Configration Fileの項目で + ボタンをクリックする
  3. 上述で作成したcheckstyle.xmlを選択する、名前も入力する
  4. 追加した定義がConfigration Fileに追加されるのでチェックボックスをクリックし、有効にする

ここまでの作業でIntelliJ IDEA上でCheckStyleによるコードチェックができるようなりました。

イメージ

Checkstyleの設定

スクリーンショット 2018-06-23 13.01.33.jpg

Checkstyleによるコードチェック画面

スクリーンショット 2018-06-23 13.04.13.png

IntelliJ IDEAのコードフォーマッタにcheckstyle.xmlの内容を反映する

  1. Preferences -> Editor -> Javaを開く
  2. Scheme項目の歯車マークをクリックする
  3. Import Scheme -> CheckStyle Configurationをクリックする
  4. 上述で作成したcheckstyle.xmlを選択する
  5. フォーマッタの内容がcheckstyle.xmlのものになる
  6. エディタ上でフォーマットを実行すると、設定した内容で整形される

フォーマッタで揃えておけば、CheckStyleに怒られることがほとんどなくなります。JavaDocの中身の、末尾のピリオドがない、などの内容はフォーマッタでは整形されないので、全てが解決されるわけではないです。

イメージ

スクリーンショット 2018-06-23 13.06.22.png

まとめ

ゆるくコードのフォーマットを統一するならそれほどいらないですが、ビルド時にエラーレベルで弾くようにしていると、コーディング作業自体がきつくなってきます。チームでコードフォーマットがずれていると、確認する側のコストにもなってくるので、なるべく自動化して、マインドでなんとかする部分を削減していきたいところです。
また最近オープンソースプロジェクトは、Google Java Styleをベースとするものが多いようです。何かを公開するときにはそれらに沿った形にすると、他のプログラマにもやさしそうです。

mediado
私たちメディアドゥは、電子書籍を読者に届けるために「テクノロジー」で「出版社」と「電子書店」を繋ぎ、その先にいる作家と読者を繋げる「電子書籍取次」事業を展開しております。業界最多のコンテンツラインナップとともに最新のテクノロジーを駆使した各種ソリューションを出版社や電子書店に提供し、グローバル且つマルチコンテンツ配信プラットフォームを目指しています。
https://mediado.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away