JUnit5 Gradle 插件覆盖默认构建任务
JUnit5 Gradle plugin overrides the default build task
我正在使用 JUnit 5 Gradle 插件,如下所述:
http://junit.org/junit5/docs/current/user-guide/#running-tests-build-gradle
我将以下部分添加到我的 gradle.build
文件中:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.junit.platform:junit-platform-gradle-plugin:1.0.3'
}
}
plugins {
id 'java'
id 'application'
// ... some others...
}
apply plugin: 'org.junit.platform.gradle.plugin'
dependencies {
testCompile group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.0.3'
testRuntime group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.0.3'
}
根据以上内容,当我使用 gradle build
任务时 - 我有以下输出:
Executing task 'build'...
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar
:findMainClass
:startScripts UP-TO-DATE
:distTar
:distZip
:bootRepackage
:assemble
:compileTestJava UP-TO-DATE
:processTestResources UP-TO-DATE
:testClasses UP-TO-DATE
:junitPlatformTest UP-TO-DATE
:test SKIPPED
:check UP-TO-DATE
:build
BUILD SUCCESSFUL
因为这包括 junitPlatformTest
我假设插件会覆盖常规 build
任务。我想知道是否有任何方法可以避免这种行为。
插件不会覆盖 build
任务。它将 test
任务的依赖项添加到 junitPlatformTest
任务,并且(默认情况下)禁用标准 test
任务(以避免多次执行基于 JUnit 4 的测试)。
build
取决于 check
和 assemble
,check
取决于 test
(参见 Gradle User Manual)。因此,当您执行 build
时,junitPlatformTest
将按照您的示例执行。
我正在使用 JUnit 5 Gradle 插件,如下所述: http://junit.org/junit5/docs/current/user-guide/#running-tests-build-gradle
我将以下部分添加到我的 gradle.build
文件中:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.junit.platform:junit-platform-gradle-plugin:1.0.3'
}
}
plugins {
id 'java'
id 'application'
// ... some others...
}
apply plugin: 'org.junit.platform.gradle.plugin'
dependencies {
testCompile group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.0.3'
testRuntime group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.0.3'
}
根据以上内容,当我使用 gradle build
任务时 - 我有以下输出:
Executing task 'build'...
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar
:findMainClass
:startScripts UP-TO-DATE
:distTar
:distZip
:bootRepackage
:assemble
:compileTestJava UP-TO-DATE
:processTestResources UP-TO-DATE
:testClasses UP-TO-DATE
:junitPlatformTest UP-TO-DATE
:test SKIPPED
:check UP-TO-DATE
:build
BUILD SUCCESSFUL
因为这包括 junitPlatformTest
我假设插件会覆盖常规 build
任务。我想知道是否有任何方法可以避免这种行为。
插件不会覆盖 build
任务。它将 test
任务的依赖项添加到 junitPlatformTest
任务,并且(默认情况下)禁用标准 test
任务(以避免多次执行基于 JUnit 4 的测试)。
build
取决于 check
和 assemble
,check
取决于 test
(参见 Gradle User Manual)。因此,当您执行 build
时,junitPlatformTest
将按照您的示例执行。