【发布时间】:2015-01-31 14:47:58
【问题描述】:
我有一个 sbt Scala 项目:
-
子项目库包含一些带有@SerialVersionUID的类,例如:
@SerialVersionUID(10L) 类 MyStuff 扩展可序列化 { ... }
项目应用程序是一个 Android 应用程序(使用 android-sdk-plugin),它有 lib 作为其依赖项
我有一个文件,我在我的开发机器 (1.7.0_75) 上使用本地 JVM 将多个 MyStaff 对象序列化到该文件中
当我尝试使用同一个 JVM 反序列化此文件时,一切正常
-
当我尝试在 Android 上使用完全相同的代码反序列化此文件时,我收到以下错误消息:
java.io.InvalidClassException: com.example.MyStuff;不兼容的类(SUID):com.example.MyStuff:static final long serialVersionUID =10L;但预期 com.example.MyStuff: static final long serialVersionUID =-7513795898815927590L;
所以,看起来我的 serialVersionUID 在过渡到 Android 时丢失了。任何想法为什么?一些proguard设置?达尔维克有什么奇怪的吗?我有点愚蠢(很可能:))
【问题讨论】:
标签: android scala serialization