Kolin Spek框架崩溃w / Gradle

spek试图找到测试时,我正在崩溃。 我已经尝试了许多不同的版本和示例配置。 我正在从命令行运行。 Gradle 4.0,mac osx。 任何帮助将不胜感激!

这是错误:

 WARNING: TestEngine with ID 'spek' failed to discover tests java.lang.NoSuchMethodError: org.junit.platform.commons.util.ReflectionUtils.findAllClassesInClasspathRoot(Ljava/nio/file/Path;Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/List; at org.jetbrains.spek.engine.SpekTestEngine.resolveSpecs(SpekTestEngine.kt:66) at org.jetbrains.spek.engine.SpekTestEngine.discover(SpekTestEngine.kt:50) at org.junit.platform.launcher.core.DefaultLauncher.discoverEngineRoot(DefaultLauncher.java:130) at org.junit.platform.launcher.core.DefaultLauncher.discoverRoot(DefaultLauncher.java:117) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:90) at org.junit.platform.launcher.Launcher.execute(Launcher.java:96) at org.junit.platform.console.tasks.ConsoleTestExecutor.executeTests(ConsoleTestExecutor.java:65) at org.junit.platform.console.tasks.ConsoleTestExecutor.lambda$execute$0(ConsoleTestExecutor.java:57) at org.junit.platform.console.tasks.CustomContextClassLoaderExecutor.invoke(CustomContextClassLoaderExecutor.java:33) at org.junit.platform.console.tasks.ConsoleTestExecutor.execute(ConsoleTestExecutor.java:57) at org.junit.platform.console.ConsoleLauncher.executeTests(ConsoleLauncher.java:85) at org.junit.platform.console.ConsoleLauncher.execute(ConsoleLauncher.java:75) at org.junit.platform.console.ConsoleLauncher.execute(ConsoleLauncher.java:48) at org.junit.platform.console.ConsoleLauncher.main(ConsoleLauncher.java:40) 

这里是我目前的build.gradle:

 buildscript { repositories { jcenter() maven { url "https://plugins.gradle.org/m2/" } } dependencies { classpath 'org.junit.platform:junit-platform-gradle-plugin:1.0.0-M5' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$project.ext.kotlinVersion" } } apply plugin: 'org.junit.platform.gradle.plugin' apply plugin: 'idea' apply plugin: 'kotlin' apply plugin: 'java' junitPlatform { filters { engines { include 'spek', 'junit-jupiter', 'junit-vintage' } } } dependencies { compile("org.jetbrains.kotlin:kotlin-stdlib-jre8:$project.ext.kotlinVersion") // testCompile 'junit:junit:4.12' testCompile 'org.jetbrains.spek:spek-api:1.1.2' testRuntime 'org.jetbrains.spek:spek-junit-platform-engine:1.1.2' testCompile 'org.junit.platform:junit-platform-runner:1.0.0-M5' testCompile 'org.junit.jupiter:junit-jupiter-api:5.0.0-M5' testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version" testRuntime "org.junit.vintage:junit-vintage-engine:4.12.0-M5" testRuntime "org.junit.jupiter:junit-jupiter-engine:5.0.0-M5" testRuntime "org.junit.platform:junit-platform-console:1.0.0-M5" testCompile "com.google.code.gson:gson:$project.ext.gsonVersion" } repositories { mavenCentral() } 

使用Spek 1.1.2时,必须使用JUnit平台版本1.0.0-M4,因为M5已经破坏了API更改,这使得它们不兼容。

看到这个: https : //github.com/JetBrains/spek/issues/225