我正在使用sbt-start-script插件来构建我的项目(尽管我认为这个问题比这更普遍;它恰好提供了一个具体的例子)。我想更改设置的值start-script-name
(可以在此处找到定义设置的相关源文件)。根据文档,我在其中添加了以下几行,build.sbt
并按预期创建了启动脚本:
import com.typesafe.sbt.SbtStartScript
seq(SbtStartScript.startScriptForClassesSettings: _*)
但是,我想更改start-script-name
设置(令人困惑地定义为 as startScriptFile
)以将其写入不同的位置,这比我预期的更令人沮丧。
使用以下设置显示良好inspect
:
[ctdrest] $ inspect uses start-script-name
[info]
[info] compile:start-script-for-jar
[info] compile:start-script-not-defined
[ctdrest] $ inspect definitions start-script-name
[info]
[info] *:start-script-name
[ctdrest] $ inspect tree start-script-name
[info] *:start-script-name = target/start
[info] +-*:target = target
[info] +-*:base-directory = /Users/amack/Coding/ctdrest
[info] +-*:this-project = Project(id: CTDRestful, base: /Users/amack/Coding/ctdrest, aggreg..
[info]
但是sbt
当我尝试设置一个值时会抱怨:
[ctdrest] $ set startScriptFile := "bar"
<set>:1: error: not found: value startScriptFile
startScriptFile := "bar"
^
<set>:1: error: reassignment to val
startScriptFile := "bar"
^
[error] Type error in expression
我想我错过了一些非常明显的东西,但是对 SBT 设置文档的大量搜索和检查并没有为我清除任何东西。