我有一个课程,如下所示
class A
{
private Map<Long ,Set<Long>> x;
private Map<Long ,Set<Long>> y;}
当avro尝试使用反射创建模式时,它会为这两个字段创建具有映射名称的模式为Pair620b9c15f622a7。因此我得到了例外
Schema s = ReflectData.get().getSchema(A.class);
虽然字段名称完全不同,但我不确定为什么会收到此错误。
1解决方案可能是使用@AvroSchema注释在架构中显式定义x和y的名称,但这是非常手动的任务,我必须在我的代码中为所有这样的映射执行此操作