使用类型安全配置和configs
("com.github.kxbmap" %% "configs" % "0.4.4",
)库
def loadConfiguration[T <: Product: TypeTag]: T = {
import configs.syntax._
val conf = ConfigFactory.load
conf.get[MyCaseClass]
应加载配置,但失败为T is not a class
。
我如何实际将T
转换为适合configs
作为java类?
答案 0 :(得分:1)
我建议您只使用 TypeTag
替换ClassTag
,因为您没有使用TypeTag
。如果您是,您可以将它们合并:T <: Product : TypeTag : ClassTag]
或使用此解决方案:https://stackoverflow.com/a/18730004/9204
从我假设的问题&#34; configs&#34;给定Java Class
对象(或ClassTag
包装对象)可以工作。但在查看文档后,我发现它没有,所以上述内容并不相关。
相反,你应该使用
def loadConfiguration[T : Configs]: T = ...