Play Framework 2.1:在Build.scala中使用play.api.Configuration

问题描述 投票:12回答:1

Play Framework 2: Read the application version defined in Build.scala的最高答案中,建议在conf/application.conf中指定应用程序版本号,并将其加载到Build.scalaplay.api.Configuration中。我正在使用Play 2.1-RC2并在构建时收到以下错误消息:

[error] [...]/project/Build.scala:7: object Configuration is not a member of package play.api 
[error] val conf = play.api.Configuration.load(new File("."))

[我认为这可能是由于必须将Play 2.1构建依赖项指定为SBT的插件,而play.api.Configuration并非Play的SBT插件的一部分。我猜想我必须在project/plugins.sbt中包含Play的核心库,但是我还没办法弄清楚。有什么想法吗?

((注:如果我的代表点足够多的话,会在原始问题中对此发表评论)]

java playframework version playframework-2.1
1个回答
24
投票
如果您不使用Play的2.1-RC2包装器直接使用typesafe的配置库,则在Configuration中工作。这是一个Java API,因此使用的方式与this answer中所述略有不同。

project/Build.scala中导入库:

import com.typesafe.config._

并从文件中手动加载配置。需要调用resolve()来解决替换。

val conf = ConfigFactory.parseFile(new File("conf/application.conf")).resolve() val appName = conf.getString("app.name") val appVersion = conf.getString("app.version")

© www.soinside.com 2019 - 2024. All rights reserved.