Spring Boot 2.4.x の Web アプリを 2.5.x へバージョンアップする ( その12 )( build.gradle から --add-opens=.....=ALL-UNNAMED の記述を削除する )
概要
記事一覧はこちらです。
Spring Boot 2.4.x の Web アプリを 2.5.x へバージョンアップする ( その11 )( Docker で複数の Tomcat を起動して動作確認する ) の続きです。
- 今回の手順で確認できるのは以下の内容です。
- build.gradle に不要になった
-add-opens=.....=ALL-UNNAMED
の記述が残っていたので削除します。
- build.gradle に不要になった
参照したサイト・書籍
目次
手順
build.gradle を変更する
build.gradle を見直していたところ、以下の記述が残っていることに気づきました。今回のバージョンアップで groovy が 3系になって powermock も依存関係から削除しており、このオプションは不要になっているはずなので削除します。
// JDK 11 に変更後、test タスク実行時に groovy と powermock が JDKの内部部分にアクセスするためにコードでリフレクションを使用 // していて WARNING が出るため、JVM の起動時オプションの --add-opens を指定して WARNING が出ないようにする def jvmArgsAddOpens = [ "--add-opens=java.base/java.io=ALL-UNNAMED", "--add-opens=java.base/java.lang=ALL-UNNAMED", "--add-opens=java.base/java.lang.invoke=ALL-UNNAMED", "--add-opens=java.base/java.lang.ref=ALL-UNNAMED", "--add-opens=java.base/java.lang.reflect=ALL-UNNAMED", "--add-opens=java.base/java.net=ALL-UNNAMED", "--add-opens=java.base/java.security=ALL-UNNAMED", "--add-opens=java.base/java.util=ALL-UNNAMED" ]
build.gradle の以下の点を変更します。
test { jvmArgs = jvmArgsForTask + ["-Dspring.profiles.active=unittest"] // for JUnit 5 useJUnitPlatform() testLogging { afterSuite printTestCount } }
def jvmArgsAddOpens = [ "--add-opens=java.base/java.io=ALL-UNNAMED", ... ]
の記述を削除します。- test タスクの jvmArgs の記述から
jvmArgsAddOpens +
を削除します。
clean タスク実行 → Rebuild Project 実行 → build タスクを実行すると "BUILD SUCCESSFUL" のメッセージが出力されました。
履歴
2021/09/26
初版発行。