获取Scala案例类

时间:2017-11-15 15:24:09

标签: java scala reflection types typesafe-config

使用类型安全配置和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类?

1 个答案:

答案 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 = ...