【发布时间】:2019-06-24 12:11:13
【问题描述】:
我想设置一个系统属性,它是命令行上的值列表。例如,
sbt run -Dfoo= <- my list
如果我要将它放在 application.conf 中,我会这样做:
foo = ["abc", "bcd"]
我将如何在命令行上执行此操作?我知道如何从一个字符串值中做到这一点,但我需要传递列表。
【问题讨论】:
标签: scala playframework typesafe-config
我想设置一个系统属性,它是命令行上的值列表。例如,
sbt run -Dfoo= <- my list
如果我要将它放在 application.conf 中,我会这样做:
foo = ["abc", "bcd"]
我将如何在命令行上执行此操作?我知道如何从一个字符串值中做到这一点,但我需要传递列表。
【问题讨论】:
标签: scala playframework typesafe-config
最简单的方法(这是指出 Lightbend Config 存在问题的最简单方法,以至于我尽量避免在 config 中列出问题!)是将每个值作为不同的属性传递:
-Dfoo.0=abc -Dfoo.1=bcd
这真的很笨重,不用说。当我控制配置时,我更喜欢将任意长度的字符串列表编码为逗号分隔的字符串,并在应用程序中将其分开。当数量有限时,我会将 config 中的列表合成为其他属性的列表。这两种方法都便于通过环境变量进行配置(在容器中尤其有用)。
【讨论】: