gpt4 book ai didi

gradle - 在 Gradle 中强制执行任务

转载 作者:行者123 更新时间:2023-12-02 09:30:35 25 4
gpt4 key购买 nike

我编写的一定数量的 Gradle 任务不需要任何输入或输出。因此,这些任务的状态始终为 UP-TO-DATE当我调用他们时。一个例子:

task backupFile(type: Copy) << {
//Both parameters are read from the gradle.properties file
from file(adjusting_file.replaceAll("\"", ""))
into file(backupDestinationDirectory + "/main/")

println "[INFO] Main file backed up"
}

这会产生以下输出:

:gradle backupFile
:backupFile UP-TO-DATE
<小时/>

有没有办法强制执行任务,而不考虑任何事情?如果有,是否也可以切换任务执行(例如告诉构建脚本要运行哪些任务以及要忽略哪些任务)?

我不能省略<<标签,因为这将使任务始终执行,这不是我想要的。

非常感谢您的投入。

最佳答案

任务必须在配置阶段进行配置。但是,您正在任务操作 ( << { ... } ) 中配置它,该操作在执行阶段运行。由于您配置任务的时间太晚,Gradle 确定它没有任何事可做并打印 UP-TO-DATE .

下面是正确的解决方案。再次,我建议使用 doLast而不是<<因为它会导致更规则的语法,并且不太可能意外添加/省略。

task backupFile(type: Copy) {
from file(adjusting_file.replaceAll("\"", ""))
into file(backupDestinationDirectory + "/main/")
doLast {
println "[INFO] Main file backed up"
}
}

关于gradle - 在 Gradle 中强制执行任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16358194/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com