Почему моя учебная задача вызывается без зависимости? - PullRequest
0 голосов
/ 31 января 2019

У меня есть задача gradle, которую я хочу игнорировать при печати значения переменной.Я не понимаю, почему он вызывается, а значение меняется.

def value = 'something'

task changeValue() {
value = 'somethingElse'
}

task printTask() {
    println "${value}"
}

Значение для печати должно быть something.Почему распечатывается somethingElse?

Редактировать:

Теперь у меня есть

task changeValue() << {
value = 'somethingElse'
}

Так что это выполняется только на этапе выполнения.

Но теперь, если я изменю свое задание на печать на

task printTask(dependsOn: changeValue) {
    println "${value}"
}

, я ожидаю, что будет напечатано somethingElse.Но теперь я только распечатал something.

Редактировать 2: забыли добавить << и в printTask. </p>

1 Ответ

0 голосов
/ 31 января 2019

Вы должны понимать жизненный цикл gradle.Проверьте эту ссылку: Жизненный цикл сборки

Значение в вашей задаче изменяется на этапе настройки.когда мы запускаем задачу, начинается фаза ее выполнения, а фаза конфигурации - во время процесса сборки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...