![](/img/trans.png)
[英]Scala: How to load environment variables into Application.conf using scala?
[英]Scala environment ${USER} in application.conf
我阅读了 2013 年写的名为“Play for Scala”的书,并看到了这样的代码示例:
在 application.conf 文件中:
environment.user = ${USER}
在一些模板文件中:
@()(implicit messages: Messages)
@import java.util.Date
@import play.api.Play.current
<footer>
lang = @messages.lang.code
user = @current.configuration.getString("environment.user") // <<--- this line
date = @(new Date().format("yyyy-MM-dd HH:mm"))
</footer>
运行示例后,我收到一个错误:
application.conf @ file:/C:/Users/Maciek/IdeaProjects/play-scala/target/scala-2.11/classes/application.conf: 18: 无法解析替换为值: ${USER}
请问什么是${USER}环境变量,它是从哪里来的? 为什么它不起作用?
我知道在书中播放版本是 2.1 而我的是 2.4.2
这更像是一个操作系统问题。 在 Linux/Unix 上,您通常将$USER
定义为当前用户(正在运行 shell 或您的应用程序)。 要检查bash
的值,请执行以下操作:
# echo $USER
yourname
在 Windows 中,您可以从cmd
检查它:
C:\> echo %USER%
%USER%
正如你所看到的,它没有在我的机器上定义。 也许您正在使用 Windows 并遇到相同的错误。 您可以在您的操作系统中设置USER
环境变量,以便它能够在您的 conf 中找到该值或提供后备值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.