在eclipse中有一个很好的功能来生成串行版本uid.但是当更新类时,eclipse不会警告必须更新串行版本的uid,它甚至没有重新生成此uid的功能,必须首先手动删除它,然后只有eclipse会要求生成新的.
是否有任何插件或其他技巧的串行版本uids最新?
解决方法:
But when class is updated eclipse does not warn that serial version uid has to be updated.
实际上,它通常不需要更新,实际上很难(自动地)知道是否是这种情况.
串行版本UID是“…类名,接口类名称,方法和字段的64位散列”(here).这意味着当任何这些“属性”发生变化时,UID会发生变化.但是,其中一些属性可以在不违反序列化对象的二进制兼容性的情况下进行更改,从而无需更改UID.例如,根据this,方法签名可以改变并且可以添加字段而不违反二进制兼容性.
如果UID不需要更新,那么有一个参数说明它不应该更新,因为更新类中的UID意味着它将无法读取序列化类…它如果你没有更新id,可能已经能够阅读!
回答你的问题:
>我知道没有这样的工具或插件.
>如果你找到了一个,你应该三思而后行.
标签:java,serialization,eclipse
来源: https://codeday.me/bug/20190518/1126753.html