scala - 强制 pureconfig 为案例类生成 ConfigReader
问题描述
我有一个隐式类,它包含一个类型安全的 Config 类以从中解析信息。这个类使用 pureconfig 来解析数据。我使用它是因为我更喜欢config.as[String]("foo")
而不是loadConfig[String](config, "foo")
. 但是由于我将其HoconConfigUtil
用作适配器case
,因此我尝试解析的所有类都失败了,因为未在这些案例类上直接调用 loadConfig 方法。因此,我收到如下所示的错误。处理这个问题的最佳方法是什么?
错误信息:
could not find implicit value for evidence parameter of type pureconfig.ConfigReader[com.example.config.Parallelism]
隐式适配器类
implicit class HoconConfigUtil(config: Config) {
def as[T](path: String)(implicit derivation: Derivation[ConfigReader[T]]): T = {
pureconfig.loadConfig[T](config, path) match {
case Right(x: T @unchecked) => x
case Left(th: ConfigReaderFailures) => throw makeException(th)
}
}
}
解决方案
推荐阅读
- arrays - 如何隔离对象的 id 以显示与该 id 相关的指定数据?
- powerbi - 如何在 PowerBi 中为比赛结果建模数据?
- android - 改造自定义超时无法正常工作
- sql - 用于排序结果的列是否应该包含在 postgresql 表的索引中?
- powershell - 更新 Sharepoint 文件“TimeLastModified”:“无法在...之间转换”错误。(PnPList vs PSObject vs PnpFolderItem)
- javascript - 转换成 JSON 数组
- reactjs - 正确的文件顺序是什么?
- python - python - List.remove method not applicable as the function with the map builtin?
- reactjs - 对于非布尔属性测试 React Test Jest 与 data-testid 收到 true
- python - 广播数据框的列时如何在字符串中使用 split()?