java.io.InvalidClassException:PublishInfMsg(类名); local class incompatible: 解决方法

今天调程序,出现了java.io.InvalidClassException:local class incompatible这个错误。

错误重现:

java.io.InvalidClassException: PublishInfMsg; local class incompatible: stream classdesc serialVersionUID = 1412277949381450533, local class serialVersionUID = -3559189311748262112

原因:本地和远程的类中serialVersionUID 值不一样.

解决方案:

 将本地的序列化的类中的版本号(serialVersionUID )改成和远程中一样

从上列异常中可以看出

 stream classdesc serialVersionUID = 1412277949381450533,  (远程)

local class serialVersionUID = -3559189311748262112 (本地)

所以你只需要吧本地的序列化类里的private static final long serialVersionUID =  改成远程的就行了

没有 private static final long serialVersionUID =  这行代码的加上这行代码。



你可能感兴趣的:(Stream,Class)