服务器和客户端之间的串行版本 ID 不匹配问题 class

Serial version id mismatch issue between server and client class

我遇到了串行版本 ID 不匹配的问题。

我的服务器有 serialVersionID=20150301L 的代码; myt 客户端代码有差异所以手动更改它但仍然面临相同的问题。

错误:

java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is: java.io.InvalidClassException: com.fedex.supplies.j2ee.common.client.reqresp.CustomerDataRequest; local class incompatible: stream classdesc serialVersionUID = 20150901L, local class serialVersionUID = -955959537118369236.

我尝试了类似实现可串行化的选项,手动定义与服务器相同的 serialVersionID,但每次都出现相同的错误。

试试下面的代码

private static final long serialVersionUID = 20150901L;

如果你没有做到privatestaticfinal它将被忽略。