Gradle 9.0 にバージョンアップしたら、こんなエラーが出るようになりました。
Execution failed for task ':SlideCollector:test'.
> Test process encountered an unexpected problem.
> Could not start Gradle Test Executor 1: Failed to load JUnit Platform. Please ensure that all JUnit Platform dependencies are available on the test's runtime classpath, including the JUnit Platform launcher.
対応方法
実行に必要な依存関係が不足しています。
build.gradle の dependencies に junit-platform-launcher を足してください。
dependencies {
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
}
原因
これまでは、Gradle に内蔵されているランチャーによって動いていました。
しかし、バージョン競合によってトラブルになることがあるので、Gradle 9.0 から内蔵のランチャーが使われないようになりました。そのため、明示的に依存関係にランチャーを指定する必要があります。
Prior to Gradle 9.0.0, Gradle leaked internal dependencies into the test’s runtime classpath which may have masked missing dependencies.
Gradle 9.0.0 以前では、Gradle が内部依存関係をテストの実行時クラスパスにリークし、これにより不足している依存関係が隠蔽される可能性がありました。
詳しくは、以下のドキュメントを参照してください。
Upgrading within Gradle 8.x - Relying on automatic test framework implementation dependencies