我有一个 gradle 测试任务,设置如下 -
sourceSets {
contractTest {
compileClasspath += sourceSets.main.output
runtimeClasspath += sourceSets.main.output
}
}
configurations {
contractTestImplementation.extendsFrom implementation
contractTestRuntimeOnly.extendsFrom runtimeOnly
}
task contractTest(type: Test) {
description = 'Runs contract tests.'
group = 'verification'
testClassesDirs = sourceSets.contractTest.output.classesDirs
classpath = sourceSets.contractTest.runtimeClasspath
}
我希望在执行这样的命令后 -
./gradlew build -x test
上面的任务(以及所有测试任务 - 单元、集成等)将被跳过。我可以通过在 gradlew 命令中明确提及 -xcontractTest
来跳过此任务。有没有办法跳过与某种类型关联的所有任务?
最佳答案
-x
(用于--exclude-task
)标志允许您按名称排除任务,而不是按类型排除任务(参见Command-Line interface)。
但是有一个更好的方法来跳过所有“测试”任务:只需使用专用的 check
生命周期任务:
使
check
任务取决于您的所有自定义测试任务,check.dependsOncontractTest
构建时排除
检查
:./gradlew build -x check
check
任务描述如下:https://docs.gradle.org/current/userguide/java_plugin.html#lifecycle_tasks
关于gradle - 是否可以跳过特定类型的所有 gradle 任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59748418/