当从命令运行gradle构建时,我可以跳过测试,如下所示:
./gradlew build -x test
我有一个自定义任务,它可以清理,构建和发布到Maven本地,如下所示:
task releaseLocal(type: GradleBuild) {
tasks = ['clean', 'build', 'publishToMavenLocal']
}
当我调用此函数时,以下任务都不会跳过测试:
./gradlew releaseLocal
./gradlew releaseLocal -x test
我可以在任务中添加哪些内容以跳过测试?
3条答案
按热度按时间kse8i1jr1#
GradleBuild
类型的任务提供了一个名为startParameter
的属性。此属性的类型为StartParameter
,可用于传递配置,否则将通过命令行参数传递。使用-x
选项传递的任务名称存储在excludedTaskNames
属性中,因此您可以使用以下代码从构建中排除名为test
的任务:但是,这将为每次调用
releaseLocal
排除任务test
,因此您可以尝试使用以下代码从当前构建中传递命令行参数:这将从当前构建中复制命令行参数,因此现在您应该能够通过调用
gradle releaseLocal -x <task>
跳过任何任务。请注意,您不能更改第二个示例中两个配置语句的顺序。在内部,
GradleBuild
的属性tasks
将应用于其startParameter
属性,因此必须在覆盖startParameter
属性后定义tasks
。piah890a2#
虽然有点晚了,但是你可以使用
assemble
来代替build
。基本上,build
意味着assemble
+test
bxgwgixi3#
尝试以下两个命令: