WindowsでCheckStyleを使用していると「Got an exception – expecting EOF, found ….」というエラーが発生するとき

EclipseプラグインでCheckStyleを使用していると以下のような感じで、

赤色のエラーが出て使用できない場合があってとっても困ってた。

解決方法を探してググってみると、 どうもJavaの使う文字コード(WindowsなのでMS932)と別の文字コードで ソースを保存(自分はUTF-8にしてた)すると、 上記の事象が発生してしまうらしい。

他のサイトでは、CheckstyleのTreeWalkerにオプションを指定するという解決方法も載っているが、 自分のバージョンのCheckstyle(5.3)だと、試してみた結果この解決方法は使えない。エラーになってしまう。 どうするか考えた結果、自分一人で開発してるだけなので、 ソースを保存する文字コードをMS932に変更してしまうことで解決した。

本当はUTF-8のほうが他(Gitとか、もろもろ)ではまりにくいと思えるのだけど、 とりあえず目先の問題を解決するスタンスでやってみる。

checkstyleで特定のフォルダ以下のファイルをチェック対象外にする方法

eclipseでcheckstyleを使うときのメモ

いまさらながら、つい忘れてしまうので。特定のフォルダを無視する方法。

プロジェクトを選択→右クリックして出てくるメニューの設定から、checkstyleを選択して、以下の設定をする。

eclipseで、checkstyleを使ったときにゲッターセッターに警告が出て困る場合

たとえば、’hoge’がフィールドを隠していますとか、Parameter hoge sohuld be finalなどといった警告が出ます。 この場合は,基本的には警告を有効にしたまま,対象となるゲッターセッター部分だけを無効にしたいものです。

このように、ソースの一部だけcheckstyleの警告を無視させるためには,以下のように、 Filters->Suppresson Comment Filterを有効に設定(Addする)して,

無効にしたいソースコードのスタート部分に

// CHECKSTYLE:OFF

チェックを再度有効にしたいところに

// CHECKSTYLE:ON

と言うコメントを入れるといいです。