【发布时间】:2015-05-29 23:48:00
【问题描述】:
如果我在我的build.sbt 文件之外将 SBT 任务键定义为项目文件夹中的 Scala 类,我该如何导入该任务
所以在 ./project/MyTask.scala 我有;
import sbt.Keys._
import sbt._
object MyTask {
lazy val uname = settingKey[String]("Your name")
lazy val printHi = taskKey[Unit]("print Hi")
printHi := { println(s"hi ${name.value}") }
}
然后在 ./build.sbt 我有;
import MyTask._
uname := "Joe"
然后,当我运行sbt printHi 时,我收到一个错误,即找不到任务。运行show uname 也可以。当我直接在 build.sbt 中定义 printHi 而没有对象导入时,一切都按预期工作。
我需要以某种方式将此任务添加到 build.sbt 文件中。我该怎么做?
【问题讨论】:
-
为了更好的谷歌搜索体验:如何在 build.sbt 之外的单独文件中定义 sbt 任务