Как объявить зависимость задачи от задач в 0.13?

В sbt 0.12 вы можете указать, что одна задача зависела от другой, фактически не используя вывод из задач ввода. Итак, вы указали чисто упорядочение задач:

unitTask <<= Seq(stringTask, sampleTask).dependOn

В документации Tasks для sbt 0.13 такого примера нет. Какой новый синтаксис для указания указанной зависимости?

Ответ 1

Используйте стандартный синтаксис, но игнорируйте результаты используемых задач:

unitTask := {
  val x = stringTask.value
  val y = sampleTask.value
  ()
}

Из-за ошибки в скаляре, вы должны использовать имена фиктивных имен, иначе вы могли бы просто использовать val _ = ....

Кроме того, я предпочитаю более явный путь выше, но он эквивалентен этой более короткой версии, потому что результаты не используются:

unitTask := {
  stringTask.value
  sampleTask.value
}

Ответ 3

Так же, как вы делали в 0.12

lazy val taskA= taskKey[Unit]("Prints 'Hello World'")
lazy val taskB= taskKey[Unit]("Prints 'Good by World'")
taskA := println("hello world!")
taskB := println("good by world!")
taskB <<= taskB.dependsOn(taskA)

Как < < <= теперь устаревает, см. ответ выше.