【问题标题】:Calling multiple gradle tasks in a task在一个任务中调用多个 gradle 任务
【发布时间】:2020-02-07 05:21:57
【问题描述】:

目前我正在尝试创建一个 gradle 任务,该任务将在一次调用中运行不同项目的所有单元测试。这是我所拥有的:

tasks.create(name: 'taskA', type: Test, dependsOn: ':projectA:unitTest')
tasks.create(name: 'taskB', type: Test, dependsOn: ':projectB:unitTest')
tasks.create(name: 'taskC', type: Test, dependsOn: ':projectC:unitTest')

task runAllUnitTests(type: Test) {
  dependsOn tasks.findByName('taskA')
  dependsOn tasks.findByName('taskB')
  dependsOn tasks.findByName('taskC')

  tasks.findByName('taskB').mustRunAfter('taskA')
  tasks.findByName('taskC').mustRunAfter('taskB')
}

当我让它运行 taskA 和 taskB 时,它运行良好。但是,当我将 taskC 添加到它时,它不会运行它。我有什么遗漏吗?

需要注意的一点是 taskB 有一些失败的测试。这可能是阻止执行的原因吗?

【问题讨论】:

    标签: gradle


    【解决方案1】:

    事实证明我的理论是正确的。如果测试失败,它不会继续前进。只需在 gradle 命令中添加 --continue 即可使其一直运行。

    【讨论】:

    • 也可以在settings.gradle中加入startParameter.continueOnFailure = true
    • 任务本身中的 gradle.startParameter.setContinueOnFailure(true) 也有效。
    猜你喜欢
    • 2017-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-30
    • 2021-06-10
    • 1970-01-01
    • 2015-12-30
    相关资源
    最近更新 更多