0

我有一个 Scala Play 项目,目前我在主模板的某个位置显示当前应用程序版本。conf/messages我可以在文件中轻松定义的版本。但是,由于我有一个用于创建版本的自动构建,因此版本迭代将build.sbt根据那里的版本更新增加的版本,例如version := "1.0.6-SNAPSHOT"

我也可以在发布期间使用相同的机制来更新我的conf/messages文件,但我更希望我的文件包含来自例如 allaconf/messages的版本信息。build.sbtapplication.version=${sbt.application.version}

我怎样才能做到这一点?有可能吗?

更新:值得一提的是,在 Maven 中,这些构建设置成为 Java 系统属性并且可以轻松使用。

4

2 回答 2

2

您可以使用sbt-buildinfo插件生成基于build.sbt.

该插件会生成一个BuildInfo对象,其中包含您可以用来显示应用程序版本的信息。

否则,我认为您无法从配置中访问 sbt 信息。

于 2014-06-25T08:06:11.390 回答
2

您可以使用xsbt-filter插件来实现此目的。它的工作原理基本类似于 Maven 的资源过滤机制,并且默认暴露项目的名称、版本等。您可以进一步配置它以公开其他属性。

于 2014-06-25T08:11:09.477 回答