我有以下课程,
case class myClass (a: String, b: Boolean, c: Double, d: HashMap[String, E])
case class E (f: String, g: Int)
下面的代码从一个 json 文件加载到这个Dataset[myClass]
,
mySparkSession.read.schema(Encoders.product[myClass].schema).json("myData.json").as[myClass]
和一个带有如下行的 .json(-lines) 文件:
{"a": "text","b": "false","c": 123456.78,"d": ["text", [{"f": "text"},{"g": 1}]]}
运行代码时出现以下错误:
编译失败:org.codehaus.commons.compiler.CompileException:文件“generated.java”,第 331 行,第 75 列:未找到适用于实际参数的构造函数/方法“java.lang.String, boolean, double, scala.collection .immutable.Map"; 候选人是:“my.package.name.objname$myClass(java.lang.String, boolean, double, scala.collection.immutable.HashMap)”
我该如何解决?