使用类型安全配置和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不是类
而失败。
我如何才能真正将 T
转换为适合 configs
作为 java 类?
最佳答案
我建议简单地替换 TypeTag
与 ClassTag
因为您没有使用 TypeTag
。如果是的话,您可以将它们组合起来:T <: Product : TypeTag : ClassTag]
或使用此解决方案:https://stackoverflow.com/a/18730004/9204
从问题中我假设“配置”可以在给定 Java Class
的情况下工作对象(或 ClassTag
包装对象)。但在检查了文档后,我发现它没有,所以上面的内容不相关。
相反,你应该使用
def loadConfiguration[T : Configs]: T = ...
关于java - 获取 Scala 案例类的类型标记的 java 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47311155/