scala - 如何在 scala 中动态生成类型安全配置(Hocon)文件(生成配置文件)
问题描述
我想动态生成 Hocon 配置。
输入图和
具有以下内容的输出文件
block{
key1 : value
key2 : value
}
Trying to read map
var myMap = new util.HashMap[String,AnyRef]()
val myConfig = ConfigFactory.parseMap(myMap)
myConfig.toString print below
Config(SimpleConfigObject({"key":"value"}))
无法弄清楚如何从中提取conf
我尝试了以下选项,但它以 JSON 格式打印
val finalConfig : String =
myConfig.root().render( ConfigRenderOptions.defaults())
println(finalConfig)
任何其他生成conf以便支持嵌套结构的方法?
编辑:找到的解决方案可以使用 ConfigFactory.withValue https://marcinkubala.wordpress.com/2013/10/09/typesafe-config-hocon/创建嵌套配置
解决方案
您可以使用kxbmap/configs
这支持play-json
开箱即用。我使用它将整个配置直接映射到case classes
.
所以你的例子看起来像:
import com.typesafe.config.ConfigFactory
import configs.Configs
val config = ConfigFactory.parseString("""
block{
key1 : value
key2 : value
}
""")
config.get[Map[String, String]("block")
推荐阅读
- javascript - 在Javascript中将UTC时间转换为EPOCH秒
- c++ - Windows 中优于 100ns 分辨率的计时器
- mapbox - Android Mapbox - 从 GeoJson 文件中归档,以便仅显示具有某些属性的点
- android - 如何在 AIDE 中实现 ViewPager 或 Viewpager 2
- python - Pytorch 预计算损失函数的一部分
- javascript - 如何根据addEventListener上的click事件通过父元素选择shadow dom中的元素?
- c# - 进程参数在 C# 中不起作用,但在 cmd 中起作用
- swift - 更新环境对象会导致内存随着每次更新而不断增长
- java - 如何在 UML 类图中表示定义枚举的类?
- java - 使用服务单击列表视图时如何在 exoplayer 上播放特定音频?