首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何覆盖Typesafe Config设置?

如何覆盖Typesafe Config设置?
EN

Stack Overflow用户
提问于 2014-11-07 00:54:09
回答 2查看 2.9K关注 0票数 2

在我的application.conf文件中,我有一个类似的

代码语言:javascript
复制
platform3.operational.state = "development"

我服务的对象是

代码语言:javascript
复制
sbt "project p3-s-sink" "run -Dplatform3.operational.state=test"

但是配置属性仍然是“开发”。

如何覆盖typesafe设置?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-08 08:54:39

也许这个博客能帮你:

不幸的是,sbt run不支持java系统属性,因此在运行sbt时不能使用命令行调整设置。sbt左轮手枪插件允许您在分叉JVM中运行应用程序,它允许您使用命令行传递java参数。

http://blog.michaelhamrah.com/2014/02/leveraging-typesafes-config-library-across-environments/

票数 2
EN

Stack Overflow用户

发布于 2014-12-05 20:59:54

来自JavaDoc of ConfigFactory.systemProperties() [ConfigFactory.java]:

*获取包含来自* {@link java.lang.System#getProperties()}的系统属性的Config,并将其解析和转换为* {@link #parseProperties}。**此方法可以返回全局不可变的单例,因此它是首选的*而不是自己解析系统属性。** {@link #load}将将系统属性包括为已重写的系统属性,以及*将包含的系统属性{@link #defaultReference}和{@link #defaultOverrides}。*因为这返回一个单例,所以它不会注意到在第一次调用该方法后对system *属性所做的更改。如果您*修改系统属性,请使用* {@link #invalidateCache()}强制单例重新加载。**@解析为Config的返回系统属性

注意中间一段:"load将包括系统属性,就像defaultReference和defaultOverrides一样。“

当您直接执行时,它是否像预期的那样工作?

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

https://stackoverflow.com/questions/26792246

复制
相关文章

相似问题

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