我有一个类A,它扩展了类B,实现了Serializable。
当我尝试使用GSONlib将其转换为JSON时,它说“类声明了多个名为serialVersionUid的JSON字段”。
只要我知道,如果我不显式声明serialVersionUid,它将由GSON生成。
我还尝试静态地放置serialVersionUid,但不起作用。
我可以通过在类A中实现序列化来修复这个错误,但是我有很多扩展B的类,我不认为从它们中排除B将是一个好主意。
有人知道为什么会出现此错误吗?
Class A extends B {
private c;
private d;
private e;
}
Class B extends Serializable{
private f;
private g;
}
1条答案
按热度按时间vsnjm48y1#
已编辑
我们在这里修改了代码,将GSON与一个自定义的GsonBuilder类一起使用。代码看起来有点像这样:
在本例中,我们在jsonize它时忽略了serialVersionUID和CREATOR字段。
旧
几秒钟前我遇到了同样的问题。我已经解决了这个问题,方法是使用transient修饰符. to by superclass添加serialVersionUUID,如下所示:
希望对你也有帮助。