我正在尝试设置条件构建过程。

以下代码可以工作,但是我需要在命令行上指定参数,而定义两个单独的任务来做到这一点应该很好。

bootJar {
    if (project.hasProperty("exec")) {
      launchScript()
    }
}

有没有一种方法可以执行bootJar或其他自定义任务来启用/禁用launchScript()?

例如,如何定义具有标准bootJar但具有launchScript的任务bootJarExecutable?

最佳答案

您可以创建另一个仅在执行时配置bootJar任务的任务:

task bootJarExecutable {
    finalizedBy bootJar
    doFirst {
        bootJar.launchScript()
    }
}

但是,这仅在一次调用中需要一个.jar或另一个调用而又不是两个调用时才起作用。在这种情况下,您将需要创建另一个 BootJar 任务并自行配置。

10-07 16:16