问题标签 [serialversionuid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1631 浏览

java - java.io.InvalidClassException 在 java 类中进行一些修改后反序列化对象

为什么无法反序列化但是我已经序列化了这个 Container 类使用serialVersionUID = 75264711556228L;

现在,在使用名称 container.ser 进行序列化后,我在 Container 类中添加了一个 setter 和 getter 方法,例如:

然后我尝试使用更改的项目名称来反序列化对象,但未能反序列化并且我得到如下错误:

0 投票
1 回答
534 浏览

java - How to send Kryo serialized objects over JMS?

I would like to use Kryo to (de-)serialize objects and send/receive them via JMS.

The problem I'm having is that both sides, sender and receiver, must register the classes with the same ID.

Kryo has a method register (Class type, int id) that I use. Unfortunately id is an int (as compared to long serialVersionUID used by the Serializable interface). It would be nice if I could use serialVersionUID to register classes.

How do you guys use Kryo over the network?

0 投票
1 回答
2234 浏览

intellij-idea - 在 intellij 中自动生成 serialVersionUID 停止工作

我之前已经通过安装插件 GenerateSerialVersionUID 并在设置-代码-检查中启用复选框,在 IntelliJ IDEA 中自动生成 serialVersionUID,就像之前对这个问题的答案所说的那样。我不能放过这个,有人吗?我有 EE 2016.1.3。我已经在这里尝试了所有答案。我要的是警告,即 IntelliJ 让我知道我应该提供 serialVersionUID。生成它是奖金。

0 投票
2 回答
658 浏览

java - 为什么java中的serialVersionUID必须是静态的、最终的和long类型的?

  1. 为什么必须将serialVersionUID声明为 static、final 和 long 类型的变量?
  2. 这个 serialVersionUID 是唯一的吗?
  3. 当两个或多个类包含相同的 serialVersionUID 时会发生什么?在这种情况下,这个 versionUID 将如何用于反序列化字节数组?
0 投票
1 回答
4352 浏览

java - 无法连接到 spark master:InvalidClassException: org.apache.spark.rpc.RpcEndpointRef; 本地类不兼容

  1. 我在 Linux 机器上安装了 Spark。版本是 spark-1.6.2-bin-hadoop2.6.tgz。
  2. 然后我使用 ./sbin/start-all.sh 启动 Spark
  3. 我尝试在 Eclipse 中运行示例 JavaWordCount.java。但总是失败。有人可以帮助我吗?

  4. Spark Master的版本是:Welcome to version 1.6.2, Using Scala version 2.10.5 (Java HotSpot(TM) Server VM, Java 1.8.0_101) Eclipse端的Spark版本是: 在此处输入图像描述

例外情况如下:

0 投票
0 回答
28 浏览

java - 使用 serialVersionUid 进行序列化

到目前为止,我对序列化的概念以及 serialVersionUid 的使用都很清楚。我有一个疑问,希望大家帮助我理解这种情况。尝试了很多,但没有从 Google 获得适当的帮助。

1)Sender 用 a 序列化一个 ObjectserialVersionUid

2)Receiver反序列化同一个Object。

来自哪里serialVersionUid?我想JVM将从序列化类中提取它。那么接收器是否应该在反序列化之前将相同的类加载到内存中?如果那为什么会因为serialVersionUid不匹配而出现异常,因为接收器将从serialVersionUid序列化类中提取。如果是这样的话,那我们为什么还要要求serialVersionUid呢?

0 投票
0 回答
56 浏览

java - 如果它们只会被记录,我应该序列化我的异常吗?

我正在开发一个小型内部工具,它肯定不会专注于可扩展性。

  • 我 100% 确信我现在或将来正在编写的代码不会有任何外部依赖关系——因此不用担心不同应用程序域之间的编组。
  • 我将记录异常,并且不太可能通过工具进行一些事后分析。
  • 不遵守初始设计发送异常 throw wire

在这种情况下,我是否仍然需要我的异常具有明确的 serialVersionUID?serialVersionUID 是否有助于仅记录对象?

0 投票
1 回答
815 浏览

java - SerialVersionUID JavaDoc?

在向我的 Java 程序添加文档时,我意识到大多数类都需要serialVersionUID声明一个常量属性。我应该如何准确记录这个属性?如果我使用默认和生成的串行版本 UID,我是否会以不同的方式记录它?

0 投票
2 回答
521 浏览

java - 生成serialVersionID而不是1L、2L、

我和一位同事讨论了可序列化类的 serialVersionUID:他总是以 a 开头,serialVersionUID = 1L然后在类有一些重大变化时将其加一。

JDK 类似乎总是使用更复杂的、生成的 serialVersionUID,例如在java.lang.String类中:

现在我的同事询问这种serialVersionUID 与更简单的serialVersionUID(如1L、2L、3L...)相比的优势?

我们也在 SOF 上进行了搜索,但对给出的答案不是很满意,例如在Why generate long serialVersionUID 而不是简单的 1L?.

在我看来,使用生成的 ID 的优点是它不需要任何关于“旧”类版本的信息。但是当手动增加 ID 时,您必须知道迄今为止的最高值。这可能听起来微不足道(只需查看当前的 serialVersionUID 并将其增加 1),但在更大的软件项目、更大的开发团队或分布式环境中可能会更复杂。

0 投票
1 回答
333 浏览

serialversionuid - swagger-codegen-maven-plugin 生成代码中的serialVersionUID

我正在使用 swagger-codegen-2.1.6 并使用 serializableModel configOptions 通过 swagger-codegen-maven-plugin 成功生成序列化模型类。但是,我没有看到将 serialVersionUID 添加到类中,也找不到包含它的任何文档。任何帮助,将不胜感激。提前致谢。