Код ниже работает.Он получает коллекцию всех различных групп задач в Gradle и распечатывает их.Я надеялся, что есть лучший способ сделать это.Частично проблема заключается в том, что я могу получить доступ ко всем задачам только с помощью метода all()
, который имеет эту сигнатуру void all(Closure var1);
, что очень расстраивает, потому что, просто возвращая коллекцию, я получаю замыкание, которое может перебирать коллекцию.
afterEvaluate { Project project ->
def blah = []
project.tasks.all { Object object ->
blah << object.group
}
println blah.unique()
}
Я надеялся, что есть лучший способ сделать это, чем хранить значения в переменной, определенной вне замыкания.Основная проблема здесь заключается в том, что во время выполнения замыкания у меня есть доступ только к одному имени группы за раз, и я хочу присвоить их уникальность, и я не могу ничего вернуть из функции all, потому что возвращаемый тип void.