我正在使用SBT 0.12.0
。如何让任务依赖于sbt 0.12中的另一个?
我有两个任务在我project/Build.scala
- helloTask
和u2
定义如下:
val hello = TaskKey[Unit]("hello", "Prints 'Hello World'")
val helloTask = hello := {
println("Hello World")
}
val u2Task = TaskKey[Unit]("u2") := { println("u2") }
如何使u2
任务取决于hellotask
?我使用了<<=
,如Tasks(在问题的原始版本中为https://github.com/harrah/xsbt/wiki/Tasks,但此后doc已移动并更改)中描述的示例。
u2Task <<= u2Task dependsOn helloTask
但我得到reassignment to val
错误。显然,我无法使用任何东西<<=
工作。我究竟做错了什么?
你能得到那个工作?你能发布你的完整配置文件吗?因为我收到了错误消息(http://pastebin.com/Tw8REnt5)。这里是我的构建文件(http://pastebin.com/L5kAW36v)。我在这里使用了sbt 0.12.0。 – 2012-08-15 11:28:35
这是一个不同的问题。您的构建定义对我来说看起来很奇怪,您在libraryDependencies中添加了一个++ =语句。我不是一个专家,但看起来很奇怪。 – themel 2012-08-15 12:29:45
它确实与我以前使用过的任务定义一起工作。我从scalaz和scala-graph项目中获得了这种风格。顺便说一下,你是如何在控制台中包含sbt并检查它的?我想试试看,所以我可能会想出一些东西。 – 2012-08-15 13:33:24