Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Eclipse中自动生成串行版本UID_Java_Eclipse - Fatal编程技术网

Java 在Eclipse中自动生成串行版本UID

Java 在Eclipse中自动生成串行版本UID,java,eclipse,Java,Eclipse,我经常使用Eclipse快速修复程序为可序列化类生成串行版本UID 默认情况下有没有办法做到这一点 只需额外单击一次,但在Eclipse中,选择快速修复通常是缓慢的,而且我在实现serializable时总是生成串行版本UID:s。这可能不是您想要的答案。假设您使用Eclipse生成与Java在未显式指定的情况下自动计算的类相同的特殊值,例如: private static final long serialVersionUID = 4125965356358329466L; 但是,对

我经常使用Eclipse快速修复程序为可序列化类生成串行版本UID

默认情况下有没有办法做到这一点


只需额外单击一次,但在Eclipse中,选择快速修复通常是缓慢的,而且我在实现serializable时总是生成串行版本UID:s。

这可能不是您想要的答案。假设您使用Eclipse生成与Java在未显式指定的情况下自动计算的类相同的特殊值,例如:

    private static final long serialVersionUID = 4125965356358329466L;
但是,对于新编写的类,没有理由依赖同样的算法。重要的是指定一个值,任何值。那么,为什么不简单地执行以下操作呢

    private static final long serialVersionUID = 1L;

然后,您可以将此代码放入Eclipse的新类模板中。

不确定是否得到了答案。但是Eclipse确实允许为所有实现
Serializable
的类一次性创建
serialVersionUID
。虽然,这和你想要的并不完全一样。但是,它将通过较少的点击达到目的

右键单击项目->源->清理…

  • 选择“使用自定义配置文件”。然后单击配置

  • 单击“缺少代码”选项卡。在“潜在编程问题”下,选择“添加串行密码ID”。单击“确定”

  • 现在,您将看到一个步骤被添加为高亮显示

单击Finish之后,Eclipse将在Ecplise中生成
serialVersionUID

从你的课堂上删除该行

private static final long serialVersionUID = 123456789L;
将鼠标放在实现可序列化的方法的名称(例如:XxxMethod)上


单击“添加生成的串行版本ID”

找到要查找的内容了吗?这当然有道理,并准确地告诉我可以和不能使用eclipse做什么。