【发布时间】:2020-01-02 20:56:34
【问题描述】:
我正在使用 SBT 0.13.2,我想通过执行编译任务的方式来触发我的任务。我知道我可以通过使用triggeredBy 方法来实现这一点,如taskDefinition.triggeredBy(compile in Compile)。
我有一个 build.sbt 定义了我的自定义任务。
问题是我无法理解为什么以下内容按预期工作
val triggeredTask = taskKey[Unit]("Triggered by compile")
triggeredTask <<= Def.task {
println("TRIGGERED BY COMPILE")
}.triggeredBy(compile in Compile)
但是下一个不起作用(compile 执行得很好,但我的任务没有被触发)
val triggeredTask = taskKey[Unit]("Triggered by compile")
triggeredTask := Def.task {
println("TRIGGERED BY COMPILE")
}.triggeredBy(compile in Compile).value
我的理解是 SBT 0.13 使 <<= 过时,:= 应该足够了。
【问题讨论】:
-
我相信这是一个合法的错误。除非使用
标签: sbt