gpt4 book ai didi

gradle - 从Gradle中的Groovy闭包返回值(value)的更好方法

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

下面的代码有效。它在Gradle中获取所有不同任务组的集合,并将它们打印出来。我希望有一个更好的方法来做到这一点。问题的一部分是我可以访问所有任务的唯一方法是通过all()方法,该方法具有此签名void all(Closure var1);,由于仅返回一个集合,这非常令人沮丧,我得到了一个可以迭代该集合的闭包。

afterEvaluate { Project project ->
def blah = []
project.tasks.all { Object object ->
blah << object.group
}
println blah.unique()
}

我希望有比将值存储在闭包外部定义的变量中更好的方法。这里的主要问题是,在运行闭包时,我一次只能访问一个组名,并且我想对它们进行唯一化,并且由于返回类型为空,因此我无法从all函数返回任何内容。

最佳答案

由于project.tasks是一个集合,您是否尝试过类似

afterEvaluate { Project project ->
println project.tasks.collect { it.group }.unique()
}

关于gradle - 从Gradle中的Groovy闭包返回值(value)的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56963645/

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