【问题标题】:Optional override multi value with environment variable in typesafe config library在类型安全配置库中使用环境变量可选覆盖多值
【发布时间】:2016-08-29 15:03:08
【问题描述】:

我喜欢typesafe config lib,但我还没有弄清楚是否以及如何可以选择性地覆盖某些多值。

类似的东西

multi = [
  "string"
  "list"
]
multi=${?MULTI_ENV}

但是这样(如果环境变量MULTI_ENV 设置为例如"value1,value2""value1 value2")当然ConfigFactory.load().resolve().getStringList("multi") 会抛出异常,因为multi 现在是一个简单的String

我也尝试过multi=[${?MULTI_ENV}],但这也不起作用,因为如果未设置MULTI_ENV 变量,multi 将为空。

如果没有一些额外的代码来检查环境变量,手动将其解析为List<String> 并手动覆盖值config.withValue("multi",myParsedStringList),这似乎是不可能的,或者是吗?

【问题讨论】:

    标签: java typesafe-config


    【解决方案1】:

    似乎到今天为止已经内置了此功能。

    feature request 自 2015 年 5 月以来就存在,但不太可能实现,因为环境变量不被视为具有语法。

    System properties already support something similar 用数字键列出:

    -Dfoo1=bar -Dfoo2=BAZ
    

    【讨论】:

      猜你喜欢
      • 2013-09-17
      • 1970-01-01
      • 2019-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-24
      • 2021-06-19
      • 2016-10-06
      相关资源
      最近更新 更多