In sbt 0.12, you could specify that one task depended upon another without actually using the output from the input tasks.所以你纯粹指定了任务的顺序:
unitTask <<= Seq(stringTask, sampleTask).dependOn
在sbt 0.13的Tasks文档中没有这样的例子。指定所述依赖项的新语法是什么?
答案 0 :(得分:13)
使用标准语法,但忽略所使用任务的结果:
unitTask := {
val x = stringTask.value
val y = sampleTask.value
()
}
由于bug in scalac,您必须使用虚拟名称,否则您只能使用val _ = ...
。
另外,我更喜欢上面更明确的方法,但它相当于这个较短的版本,因为结果没有使用:
unitTask := {
stringTask.value
sampleTask.value
}
答案 1 :(得分:9)
官方migration guide建议代替:
>>> from collections import OrderedDict
>>> itemList = [1, 2, 0, 1, 3, 2]
>>> itemList[:]=OrderedDict.fromkeys(itemList)
>>> itemList
[1, 2, 0, 3]
将其定义为:
a <<= a dependsOn b
答案 2 :(得分:4)
就像你在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)
由于&lt;&lt; =现已弃用,请参阅上面的答案。