Spark:未找到 java.util.UUID 的编码器

Spark : No Encoder found for java.util.UUID

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

创建数据集时出现此错误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。