在Intellij上,你如何能够为用Kotlin编写的类生成SerialVersionUID?
我在Intellij中启用了检查:
报告任何不提供serialVersionUID字段的Serializable类 . 如果没有serialVersionUID字段,对类的任何更改都将使以前的序列化版本不可读 .
但这仅适用于Java类
你是对的 . 这种检查对Kotlin类不起作用 . 也许你可以向Jetbrains提交一个问题,以便他们可以修复它 .
要生成SerialVersionUID,您可以使用JDK的内置命令serialver .
E:\ workspace \ target \ classes> serialver地址:static final long serialVersionUID = -687991492884005033L;
其他用途examples .
我没有在Kotlin的youtrack中找到这样的问题,所以请创建它 .
如果您使用Idea,则可以为此目的创建实时模板 .
有效 serialVersionUID 应如下所示:
serialVersionUID
class Test : Serializable { companion object { @JvmStatic private val serialVersionUID = 1 } }
2 回答
你是对的 . 这种检查对Kotlin类不起作用 . 也许你可以向Jetbrains提交一个问题,以便他们可以修复它 .
要生成SerialVersionUID,您可以使用JDK的内置命令serialver .
其他用途examples .
我没有在Kotlin的youtrack中找到这样的问题,所以请创建它 .
如果您使用Idea,则可以为此目的创建实时模板 .
有效
serialVersionUID
应如下所示: