首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HOCON不替换环境变量

HOCON不替换环境变量
EN

Stack Overflow用户
提问于 2015-04-15 16:35:01
回答 3查看 2.6K关注 0票数 1

我在https://github.com/typesafehub/config/blob/master/HOCON.md#substitution-fallback-to-environment-variables阅读了有关返回到环境变量的文档。我的理解是,它会引起任何敌人的注意。因此,例如,如果从shell中我能够执行回显$HOSTNAME并看到一个非空响应,那么HOCON也应该这样做。

在我的application.conf里我有一条线

代码语言:javascript
复制
akka.remote.netty.tcp.hostname = ${HOSTNAME}

然而,我的应用程序对此并不满意,而且一开始就失败了。

代码语言:javascript
复制
/conf/application.conf: 9: Could not resolve substitution to a value:  ${HOSTNAME}

这是用户问题吗?壳问题?我可以以用户身份登录并回显$HOSTNAME。

标记此scala和akka,因为该用户群可能对HOCON的影响最大

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-04-16 17:47:25

HOCON之所以没有选择envar,是因为我的应用程序是以linux服务(CentOS6.5)的形式运行的,它清除了大多数环境变量。

有关此问题的相关说明,请参见https://unix.stackexchange.com/questions/44370/how-to-make-unix-service-see-environment-variables

票数 2
EN

Stack Overflow用户

发布于 2015-04-15 21:33:02

这是在黑暗中拍摄,但您是否使用了较旧版本的类型设置?也许这是个更新的功能?这个特性似乎正如您所描述的那样被宣传,但是如果您将the作为一个临时依赖项(例如来自akka),那么您可能会得到一个更旧的版本。

如果您删除.conf文件中的替换(因此解析成功),然后打印出ConfigFactory.systemEnvironment()的内容,会发生什么?参考:http://typesafehub.github.io/config/latest/api/com/typesafe/config/ConfigFactory.html#systemEnvironment--

票数 1
EN

Stack Overflow用户

发布于 2016-02-11 04:41:53

主机名不是环境变量。这是一个bash内部变量。有关更多详细信息,请参阅https://superuser.com/questions/132489/hostname-environment-variable-on-linux

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29655888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档