【问题标题】:How to avoid com.typesafe.config.ConfigException$Missing in scala如何在 scala 中避免 com.typesafe.config.ConfigException$Missing
【发布时间】:2021-01-15 07:22:05
【问题描述】:

我有一个 scala 项目,我正在读取配置文件以从 application.conf 中检索常量的值。

val config = ConfigFactory.load()

val param = config.getString("project.constant"+args(1))

现在如果常数不存在,那么 参数应采用默认值。

但问题是如果常量不在 application.conf 中, 它给出了运行时异常com.typesafe.config.ConfigException$Missing

我写了一个函数

def isEmpty(x:String) = Option(x).forall(_.isEmpty)

所以我可以使用 isEmpty(param) 来确定如果它为空,则分配一个默认值。

但是运行时异常发生在config.getString()

请指教。

【问题讨论】:

  • 我正在寻找配置中的一个属性,而不是整个配置。

标签: scala typesafe-config


【解决方案1】:

我找到了答案,我们可以使用 hasPath() 方法来确定给定的属性是否在给定的配置中定义。

【讨论】:

  • 拥有一个设置默认值的reference.conf 文件可能也更惯用。
猜你喜欢
  • 1970-01-01
  • 2020-10-24
  • 1970-01-01
  • 2012-02-21
  • 1970-01-01
  • 2017-01-31
  • 2017-09-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多