gpt4 book ai didi

gradle - Gradle中<<的目的

转载 作者:行者123 更新时间:2023-12-03 06:19:55 25 4
gpt4 key购买 nike

我开始玩gradle,试图了解<<的目的。

在执行gradle -q task0时build.gradle包含给我task 0

4.times { counter ->
task "task$counter" <<{
println "task $counter"
}
}

在build.gradle包含以下内容时执行gradle -q test {0123}
4.times { counter ->
task "task$counter" {
println "task $counter"
}
}

返回
task 0
task 1
task 2
task 3

有人可以帮助您了解 <<的目的吗?

最佳答案

如果您具有<<,它将在执行任务时执行打印行,而在配置任务时不执行打印行。

这可能会影响您的输出,因为Gradle生命周期是“初始化”>“配置”>“执行”。

例如,如果您的build.gradle包含:

task "task0" << {
println "task 0"
}

task "task1" {
println "task 1"
}

然后,如果执行 task0,您将获得:
> gradlew -q task0
task 1
task 0

即使您只希望 task 0打印。而如果执行 task1则会得到:
> gradlew -q task1
task 1

这是因为 task1在配置过程中正在打印出来,即使您没有运行它,在配置阶段也会读取整个 build.gradle文件以确定执行什么操作。您甚至可以去:
> gradlew clean
task 1

然后从 task1获得输出。

关于gradle - Gradle中<<的目的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26835689/

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