Spring Boot 2.4.x の Web アプリを 2.5.x へバージョンアップする ( その6 )( Release Notes を見て必要な箇所を変更する。。。ことがなさそうなので Checkstyle を 8.41 → 9.0 へバージョンアップする )
概要
記事一覧はこちらです。
- 今回の手順で確認できるのは以下の内容です。
- 以下のドキュメントを見て必要な箇所を変更します。。。と思ったのですが、今回は変更が必要なところがありませんでした。
- ただし Secure Info Endpoint の exposing リンクへ飛んだ先の 6.2.3. Securing HTTP Endpoints を見たところ SecurityConfiguration クラスの実装方法が全然違う!と思ったのですが、Spring Security Reference の 16.3. Multiple HttpSecurity を読んで今のままで変更する必要はありませんでした。
- Checkstyle を 8.41 → 9.0 へバージョンアップします。
- 最新版の google_checks.xml の内容も反映します。
参照したサイト・書籍
checkstyle / checkstyle
https://github.com/checkstyle/checkstylecheckstyle/checkstyle - checkstyle/src/main/resources/google_checks.xml
https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
目次
- build.gradle を変更する
- 最新版の google_checks.xml から変更点を反映する
- IntelliJ IDEA の CheckStyle-IDEA Plugin が使用する Checkstyle のバージョンを 8.45 に変更する
@SuppressWarnings("checkstyle:...")
が効かないことに気づいたので SuppressWarningsFilter、SuppressWarningsHolder を追加する
手順
build.gradle を変更する
checkstyle { configFile = file("${rootProject.projectDir}/config/checkstyle/google_checks.xml") toolVersion = "9.0" sourceSets = [project.sourceSets.main] }
toolVersion = "8.41"
→toolVersion = "9.0"
に変更します。
Gradle Tool Window の左上にある「Refresh all Gradle projects」ボタンをクリックして更新した後、clean タスク実行 → Rebuild Project 実行 → build タスクを実行すると checkstyleMain タスクで Unable to create Root Module: ...
というエラーメッセージが出力されました。
先に最新版の google_checks.xml の変更点を反映して、解決しなければ調査することにします。
最新版の google_checks.xml から変更点を反映する
最新版の google_checks.xml から変更点を反映します。今回反映した内容を箇条書きで記述しておきます。
<module name="NoWhitespaceBeforeCaseDefaultColon"/>
を追加しました(https://checkstyle.org/config_whitespace.html#NoWhitespaceBeforeCaseDefaultColon)。<module name="OperatorWrap">
の<property name="tokens">
の value にTYPE_EXTENSION_AND
を追加しました。<module name="JavadocMethod">
で<property name="scope" value="public"/>
→<property name="accessModifiers" value="public"/>
に変更しました。
clean タスク実行 → Rebuild Project 実行 → build タスクを実行すると BUILD SUCCESSFUL が表示されましたが、WARNING が1個出力されました。以下の点を変更します。
Javadoc コメントがありません。 [com.puppycrawl.tools.checkstyle.checks.javadoc.MissingJavadocMethodCheck]
再度 clean タスク実行 → Rebuild Project 実行 → build タスクを実行すると WARNING が出なくなりました。
IntelliJ IDEA の CheckStyle-IDEA Plugin が使用する Checkstyle のバージョンを 8.45 に変更する
CheckStyle-IDEA Plugin に指定できるバージョンが 8.45 までだったので 8.45 を指定します。
@SuppressWarnings("checkstyle:...")
が効かないことに気づいたので SuppressWarningsFilter、SuppressWarningsHolder を追加する
今の設定だと @SuppressWarnings("checkstyle:...")
が効かないことに気づいたので config/checkstyle/google_checks.xml を以下のように変更します。
.......... <module name="SuppressWarningsFilter"/> <module name="TreeWalker"> <module name="SuppressWarningsHolder"/> <module name="OuterTypeFilename"/> ..........
- 以下の2行を追加します。
<module name="SuppressWarningsFilter"/>
<module name="SuppressWarningsHolder"/>
履歴
2021/09/03
初版発行。
2021/09/08
* @SuppressWarnings("checkstyle:...")
が効かないことに気づいたので SuppressWarningsFilter、SuppressWarningsHolder を追加する を追加しました。