No applicable constructor/method found for actual parameters

在用case class 解析parquet文件时,比如先去查看下数据的schema,是如下形式的
No applicable constructor/method found for actual parameters_第1张图片
构造一个case class如下

case class xxx(
       id:String,
       idType:Byte,
       appUsage: Map[String,Map[String,Map[String,Long]]]
       )

解析的时候报如下的错误

No applicable constructor/method found for actual parameters "java.lang.String, int, scala.collection.Map"; candidates are: "appinf(java.lang.String, int, scala.collection.immutable.Map)"

schema 上显示的Byte类型,在这里要申明为int才可以,很奇诡的问题

当博主某次又在schema中又看到了byte类型的变量,于是在case class中申明为int类型,结果又tm报错了,说byte类型不能申明为int类型 ,真是玄学。

你可能感兴趣的:(Spark)