【发布时间】:2018-07-04 23:31:01
【问题描述】:
我正在编写一个小型 sbt 插件来生成一些文件,这些文件应该可以通过目标路径参数进行配置。所以我写了这个插件代码:
object GeneratorPlugin extends AutoPlugin {
object autoImport {
val targetPath = settingKey[String]["target directory"]
val generateFiles = taskKey[Unit]["generate files"]
}
import autoImport._
override def trigger = allRequirements
override lazy val buildSettings = Seq(
targetPath := ".",
generateFiles := generateTask
)
lazy val generateTask = Def.task {
System.out.println(targetPath.value)
}
}
当在project/plugins.sbt 中使用addSbtPlugin 导入它并使用sbt generateFiles 运行它时,会正确打印.。但是,当我在 build.sbt 中更改 targetPath 的值时,结果不会改变。
targetPath := "/my/new/path"
sbt generateFiles 的结果仍然是 .。
导入插件时有没有办法在我的build.sbt 中更改targetPath 的值?
【问题讨论】:
标签: scala plugins sbt settings