我正在尝试在Play中将各种设置与构建定义分开! 2.1应用。
我在build.sbt中定义了一些设置,如下所示:
name := "My Project"
version := 1.0
如何在Build.scala中重用这些值?
object ApplicationBuild extends Build {
val main =
// Doesn't compile since name and version are SettingKeys, not Strings
play.Project(name, version).settings(
// ...
)
}
非常感谢!
最佳答案
如果需要访问密钥,可以使用<<=
代替:=
(例如,用<+=
代替+=
)。在这种情况下,我们要从全局范围中提取版本和名称。
val main = play.Project(appName, appVersion, appDependencies).settings(
version <<= (version in Global) { v => v} ,
name <<= (name in Global) { n => n }
)
尽管由于这是默认范围,所以在这种情况下我们可以忽略该范围。
val main = play.Project(appName, appVersion, appDependencies).settings(
version <<= (version) { v => v} ,
name <<= (name) { n => n }
)
甚至更短的版本就是
val main = play.Project(appName, appVersion, appDependencies).settings(
version <<= version ,
name <<= name
)
请注意,您的
build.sbt
文件必须位于根目录而不是project/
目录中。