这个问题与我的烦恼有关,sbt-scapegoat
但我想在全球范围内了解这件事。
因此,sbt-scapegoat
定义了一个设置scapegoatVersion
和配置scapegoat
。此处提供简短而完整的源代码。
当我设置scapegoatVersion in ThisBuild := "1.3.0"
它被忽略:
> scapegoat:scapegoatVersion
[info] frontend/scapegoat:scapegoatVersion
[info] 1.0.0
[info] backend/scapegoat:scapegoatVersion
[info] 1.0.0
[info] {.}/scapegoat:scapegoatVersion
[info] 1.3.0
我理解是这样,因为scapegoatVersion := "1.0.0"
从autoImport
对象中为每个项目导入,并且这样的设置比scapegoatVersion in ThisBuild
覆盖它更精确。
我的问题是:如何在插件中定义这样的默认值以允许使用ThisBuild
or进行全局覆盖Global
。
@edit:
我发现version
设置 iDefaults.scala
是使用:==
而不是:=
. 这是我要找的把戏吗?遗憾的是,它没有记录在案,而且它是私有的sbt
。