无法在gradle中找到用于测试任务的方法useJUnitPlatform

时间:2018-08-24 05:44:41

标签: java gradle

我正在尝试配置gradle以运行JUnit 5测试。但是,当我尝试在我的gradle文件中添加useJUnitPlatform()以启用此处指示的gradle docs JUnit 5支持时,出现错误

Could not find method useJUnitPlatform() for arguments [] on task ':test' of type org.gradle.api.tasks.testing.Test.

这是我的Gradle文件

    apply plugin: 'java'

group 'com.notif'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
    jcenter()
    maven {
        url 'https://packages.confluent.io/maven/'
    }
}

tasks.withType(Test) {
    testLogging {
        exceptionFormat "full"
        events "started", "skipped", "passed", "failed"
        showStandardStreams true
    }
}


dependencies {
    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.2.0'
    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.2.0'
    testImplementation "org.mockito:mockito-core:2.21.0"
    implementation 'org.apache.kafka:kafka-streams:1.0.0-cp1'
    implementation 'org.apache.kafka:kafka-clients:1.0.0-cp1'
    implementation 'org.apache.avro:avro:1.8.2'
    implementation 'org.apache.logging.log4j:log4j-core:2.11.0'
    implementation 'org.apache.logging.log4j:log4j-api:2.11.0'
    implementation 'io.confluent:kafka-streams-avro-serde:4.1.0'
    implementation 'biz.paluch.logging:logstash-gelf:1.11.2'
    implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.6'
    implementation 'org.asynchttpclient:async-http-client:2.2.0'
    implementation 'org.apache.logging.log4j:log4j-jcl:2.11.1'
}

任何想法为什么会发生这种情况,我是否缺少任何依赖性

2 个答案:

答案 0 :(得分:4)

如果使用的是IntelliJ,则值得检查给定项目使用的是哪个Gradle(可以是包装器,任务,本地)。为此,请转到“设置”并搜索Gradle。然后导航到Build,Execution,Deployment-> Build Tools-> Gradle

答案 1 :(得分:0)

这是我修复它的方法。 我将此添加到了build.gradle中:

    testCompile(
            "org.jetbrains.kotlin:kotlin-test:1.3.21",
            'org.junit.jupiter:junit-jupiter-api:5.4.0'
    )
    testRuntime(
            'org.junit.jupiter:junit-jupiter-engine:5.4.0',
            'org.junit.vintage:junit-vintage-engine:5.4.0'
    )

然后我使用了gradle包装器(我正在使用gradle 4.8 ),因此它在从一台计算机到另一台计算机上都保持稳定:

./gradlew clean build test