2017-08-03 32 views
0

我有一類低於org.apache.avro.SchemaParseException:不能重定義:org.apache.avro.reflect.Pair620b9c15f622a7

class A 
{ 
private Map<Long ,Set<Long>> x; 
private Map<Long ,Set<Long>> y;} 

給出的Avro時嘗試透過反射它創建的創建模式這兩個字段的映射名稱爲Pair620b9c15f622a7。因此,我得到的例外

Schema s = ReflectData.get().getSchema(A.class); 

我不知道爲什麼我得到這個錯誤,雖然字段名稱是完全不同的。此

1解決方案可能是顯式定義x和y使用@AvroSchema註釋的模式的名字,但是這是非常的手動任務,我必須這樣做,所有這樣的映射在我的代碼

回答