MavenでCheckstyle
開発環境にEclipseではなくVisual Studio Codeを用いていて、ビルドツールはコマンドラインでMavenのコマンドをたたいている。
で、Pythonを書いているとpep8なるものがありコーディング規約をチェックしてくれたり、Goだと言語仕様レベルでコーディング規約を定めてくれていることもあり、Javaでもそろそろコーディング規約のチェックツールを導入するかなーと思った。
Javaでのコーディング規約チェックツールにはCheckstyleというツールがある。これを使えばいいことまではすぐにわかったのであるがMavenを使っていることだしMavenで実行させたい。
Maven用のCheckstyle Pluginはちゃんとある。
Apache Maven Checkstyle Plugin – Introduction
しかし日本語資料はこれでもかというぐらい見つからなかった。厳密にはあったのだが、Maven2での資料でMaven3ではなかった。
なのでここに軽く示す。
Apache Maven Checkstyle Plugin – Usage
示すって言った直後にあれだけどここのページの下部にあるExampleを大体コピーで構わない。バージョンには気を付けるのと、設定関係の値(configuration下)は考えた方がいい。
configLocation値とかは書かなくても動くし(Checkstyle自体がデフォルトでSunの規約となっているのでおそらくそれで動いてくれる)
で、走らせた結果日本語が文字化けしてめちゃくちゃエラーを吐いている。つらい。5471個もエラーが出た。つらい
でも日本語使ってるからエラーというわけではなく、出力がUTF-8だからこうなってっぽい。
一応CHCPコマンドで文字コードを変えることはできるが、それでも一部文字が上手く表示されないようだった。
出力をShiftJISにするか、あるいはエラーメッセージを英語で出力するかの解決法しかないと思われる。一時ファイルに出力させてそれをエディタで見るのも一つではあるが、それもそれで面倒。
一番楽なのは出力を英語にするやつだと思う。でもどうすればいいかわからない……