java - java.io.InvalidClassException: cdfs.events.C; 本地类不兼容:流 classdesc serialVersionUID = -x,本地类 serialVersionUID = y
问题描述
我们有一个可序列化的超类 cdfs.events.A,并且在 java 文件中定义了一个 serialVersionUID。
cdfs.events.B 不可序列化且未定义 serialVersionUID 但继承自 cdfs.events.A cdfs.events.C 不可序列化且未定义 serialVersionUID 但继承自 cdfs.events.B
一切正常,直到我们修改 cdfs.events.C(一个小的逻辑更改 - 我们只是将它设为一个空类),交付并部署在 tomcat 中。
现在,当应用程序尝试创建 cdfs.events.C 时,我们收到此错误,
java.io.InvalidClassException: cdfs.events.C; 本地类不兼容:流classdesc serialVersionUID = -1499697765910017945,本地类serialVersionUID = 8422749130784877315
上面错误显示的 serialVersionUID 也不在基类 serialVersionUID 中。所以这意味着它是一些生成的 id,但旧的在哪里打断。没有序列化发生,我们之前已经做过很多次没有问题。也没有客户端服务器模型。请帮忙
解决方案
推荐阅读
- mysql - MySQL 和 phpMyAdmin:显示转换
- out-of-memory - 在pytorch中同时迭代两个数据加载器时出现内存错误
- javascript - 用时刻解析日期字符串
- javafx - 格式化文本字段
- asp.net - ASP.Net Gridview RowCommand 编辑、更新
- android - Expo 的 BarCodeScanner 在使用构建进行扫描时崩溃
- jquery - 单击表格单元格时显示图像
- plsql - 具有参数化模式名称并用于目标表中的 BULK INSERT 的动态游标
- micronaut - 是否可以在重试事件中将参数更改为使用 @Retryable 注释的类中的方法?
- excel - Excel VBA - 在 Do-While 循环中完成另一个循环操作