我一直在玩 GWT,我似乎有创建不符合 GWT 可序列化对象规则的类的坏习惯:
如果满足以下所有条件,则用户定义的类是可序列化的:
- 它可以分配给 IsSerializable 或 Serializable,因为它直接实现了这些接口之一,或者因为它派生自一个超类
- 所有非最终的、非瞬态的实例字段本身都是可序列化的,并且
- 从 GWT 1.5 开始,它必须有一个默认(零参数)构造函数(带有任何访问修饰符)或根本没有构造函数。
通常我忘记包含一个默认构造函数。当我在运行时遇到序列化异常时,我通常会发现这一点。这让我觉得没有必要。当然,Eclipse(或 Google 插件)可以通过某种方式静态分析我的 GWT 代码并在编译时发现这个问题?在某处看到一点点红色波浪比获得运行时异常要好得多。
我希望有一个像以下之一的解决方案,按照愿望的增加顺序:
- 我可以在 Eclipse 或 Google 插件中设置的配置选项以启用这种警告/验证
- 我可以安装的附加插件可以做到这一点
- 完成工作的任何其他预先存在的方式。
- 提示我如何修改 Google 插件以自己执行此操作。