在sbt shell中如何设置子项目的设置?
我知道我可以project subproject,然后set key := value,但我不希望有保持开关项目.理想情况下与以下内容不同:
set key in subproject := value
Run Code Online (Sandbox Code Playgroud)
我认为问题在于您已经定义了项目build.sbt,并且它们似乎在sbt控制台中不可见.至少在sbt的当前版本中 - 看到这个问题,这个问题实际上是在几天前解决的(!)
我找到了两种克服这种限制的方法.
set version in "projectId" := "some-version"
Run Code Online (Sandbox Code Playgroud)
使用以下构建定义文件build/Build.scala:
import sbt._
import Keys._
object Build extends Build {
lazy val projectA, projectB = project
}
Run Code Online (Sandbox Code Playgroud)
你可以set version in projectA := "1.42-SNAPSHOT按预期的效果执行.
此外,您可以只build/Build.scala包含项目定义,其余配置包含build.sbt每个子模块.它的效果非常好set.