我创建了一个空的 gradle 项目,内部包含单个模块(子项目),也作为 gradle 项目,但使用 Spring boot 2。主要(无标题1)build.gradle:group 'com.example'version '1.0-SNAPSHOT'allprojects { repositories { mavenCentral() }}设置.gradle:rootProject.name = 'main-project'include 'new-one'子项目(新项目):构建 gradle:plugins { id("java") id("org.springframework.boot") version "2.1.8.RELEASE" id("io.spring.dependency-management") version "1.0.8.RELEASE"}group = 'com.example'version '1.0-SNAPSHOT'sourceCompatibility = 1.12dependencies { implementation 'org.springframework.boot:spring-boot-dependencies:2.0.5.RELEASE' implementation 'org.springframework.boot:spring-boot-starter-web' testImplementation 'org.springframework.boot:spring-boot-starter-test' def junit = '5.5.2' testImplementation ("org.junit.jupiter:junit-jupiter-api:${junit}") testImplementation ("org.junit.jupiter:junit-jupiter-params:${junit}") testImplementation ("org.assertj:assertj-core:3.11.1") testRuntime("org.junit.jupiter:junit-jupiter-engine:${junit}")}test { useJUnitPlatform()}使用测试运行器运行测试:IntelliJ idea 编译并通过测试,但是当我使用 gradle 时,如果我运行单个测试,它会返回:Testing started at 2:48 PM ...> Task :new-one:cleanTest> Task :new-one:compileJava UP-TO-DATE> Task :new-one:processResources NO-SOURCE> Task :new-one:classes UP-TO-DATE> Task :new-one:compileTestJava> Task :new-one:processTestResources NO-SOURCE> Task :new-one:testClasses> Task :new-one:test FAILEDSep 30, 2019 2:48:53 PM org.junit.platform.launcher.core.DefaultLauncher handleThrowableWARNING: TestEngine with ID 'junit-jupiter' failed to discover testsjava.lang.NoClassDefFoundError: org/junit/platform/engine/support/discovery/Sel
1 回答
江户川乱折腾
TA贡献1851条经验 获得超5个赞
如https://github.com/junit-team/junit5-samples/blob/r5.5.2/junit5-jupiter-starter-gradle/build.gradle所示,我建议将 Jupiter 依赖项定义为:
testImplementation('org.junit.jupiter:junit-jupiter:5.5.2')
希望能解决这个问题。
添加回答
举报
0/150
提交
取消