Gradle: как обратиться к вводу другой задачи? - PullRequest
0 голосов
/ 28 мая 2018

Краткий вопрос

В конфигурации одной задачи Gradle как я могу сослаться на ввод другой задачи?

Что я пробовал

Рассмотримследующий (надуманный) пример build.gradle файла (хранится в /tmp/foo), в котором я хотел бы использовать одно и то же входное значение задачи в двух разных задачах:

task task1 {
  def myInput = projectDir  // (or any other directory)
  inputs.dir(myInput).withPropertyName('t1Input')
  doLast {
    println myInput
  }
}

task task2 {
  dependsOn task1
  def myInput = task1.inputs.properties['t1Input']
  inputs.dir(myInput).withPropertyName('t2Input')
  doLast {
    println myInput
  }
}

В task2 Я хотел быиспользуйте тот же вход, что и в task1.Однако, когда я запускаю эту сборку с ./gradlew --console=verbose --warning-mode=all task2, я получаю:

> Task :task1 
/tmp/foo
> Task :task2 
A problem was found with the configuration of task ':task2'. Registering invalid inputs and outputs via TaskInputs and TaskOutputs methods has been deprecated and is scheduled to be removed in Gradle 5.0.
 - No value has been specified for property 't2Input'.
null

Кажется, что мое свойство ввода задачи с именем t1Input из task1 недоступно через task1.inputs.properties ( Javadoc).

FWIW, я использую Gradle 4.6.

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