我遇到串行版本ID不匹配的問題。服務器和客戶端類之間的串行版本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.
我試着像實施serilizable選項,手動定義serialVersionID相同的服務器,但每次都得到同樣的錯誤。
如果您手動更改它,它不會給出相同的錯誤。 'local class serialVersionUID'是你指定的數字。如果它沒有改變,你沒有正確設置並更新你的代碼。 –
你能告訴我們如何在你的代碼中設置'serialVersionUID'嗎? –
換句話說,您必須將其設置爲流中的內容「20150901L」。 – EJP