首页 > 解决方案 > 如何在 scala 中避免 com.typesafe.config.ConfigException$Missing

问题描述

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

val config = ConfigFactory.load()

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

现在,如果常量不存在,那么 param 应该采用默认值。

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

我写了一个函数

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

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

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

请指教。

标签: scalatypesafe-config

解决方案


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


推荐阅读