Spark:找不到用于 java.util.UUID 的编码器

问题描述

我有一个包含类型字段 UUID 的案例类。 我使用 anorm 解析 Postgres 表,并且想将列表转换为数据集。

创建数据集时,出现此错误 No Encoder found for java.util.UUID

def encoder[T: Encoder] = implicitly[Encoder[T]]

val parser = Macro.namedParser[Vehicle]

val result = sql(s"SELECT * FROM $tableName").as(parser.*)

spark.createDataset(result)(encoder[Vehicle])

我该如何处理这个错误

感谢您的帮助。

解决方法

spark 2 中没有 UUID 编码器。您应该使用 String 代替。