我有一个可序列化的java类,当我添加以下任一方法时。我收到此错误
“本地类不兼容:stream classdec serialversionUID = ....,local class serialversionUID = ...”
添加方法:
public HashMap<Long, BookIndex> getBookIndexMap() {
return bookIndexMap;
}
public String getDataFileName() {
return dataFileName;
}
造成这种情况的原因是什么?如何纠正?
答案 0 :(得分:0)
本文可能会有所帮助:
http://lingpipe-blog.com/2010/05/04/upgrading-java-classes-backward-compatible-serialization/
通过更改类的方法签名,以前的序列化表单是不兼容的,除非类具有相同的serialVersionUID。
答案 1 :(得分:0)
即使serialVersionUID相同,但某些更改与先前的序列化表单不兼容。
答案 2 :(得分:0)
我通过以下方式解决了这个问题:
在Eclipse Neon中工作。
然后