Pie*_*VDE 6 gradle build.gradle
我写的一定数量的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"
}
Run Code Online (Sandbox Code Playgroud)
这导致以下输出:
:gradle backupFile
:backupFile UP-TO-DATE
Run Code Online (Sandbox Code Playgroud)
有没有办法迫使(ny)任务执行,无论什么事情?如果有,是否也可以切换任务执行(例如告诉构建脚本运行哪些任务以及忽略哪些任务)?
我不能省略<<标签,因为这会使任务总是执行,这不是我想要的.
非常感谢您的投入.
Pet*_*ser 10
必须在配置阶段配置任务.但是,您在任务操作(<< { ... })中进行配置,该操作在执行阶段运行.因为您要配置任务太晚,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"
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9350 次 |
| 最近记录: |