目标的执行默认值 org.apache.avro:avro-maven-plugin:1 .10.2:schema 失败:字段默认值无效

Execution default of goal org.apache.avro:avro-maven-plugin:1 .10.2:schema failed: Invalid default for field

在执行 avro-maven-plugin:schema 目标期间,我不断收到此错误:

[ERROR] Failed to execute goal org.apache.avro:avro-maven-plugin:1.10.2:schema (default) on project test: Execution default of goal org.apache.avro:avro-maven-plugin:1
.10.2:schema failed: Invalid default for field someId: null not a ["int","null"] -> [Help 1]

这就是该字段在架构中的样子:

{
    "name" : "someId",
    "type" : [ "int", "null" ],
    "default" : null
}

并且架构根据 https://json-schema-validator.herokuapp.com/avro.jsp 有效。

有谁知道出了什么问题以及如何解决?

提前致谢...

规范规定默认值必须匹配并集的第一个元素:https://avro.apache.org/docs/current/spec.html#Unions.

因此您需要将联合的顺序更改为 null 类型在前,或者将默认值更改为整数类型。