为IntelliJ中的Kotlin类生成SerialVersionUID

时间:2016-11-30 22:39:55

标签: intellij-idea kotlin

在Intellij上,你怎么能为用Kotlin编写的类生成SerialVersionUID?

我在Intellij中启用了检查:

  

报告任何不提供serialVersionUID字段的Serializable类。如果没有serialVersionUID字段,对类的任何更改都将使以前的序列化版本不可读。

但这仅适用于Java类

3 个答案:

答案 0 :(得分:1)

你是对的。这种检查对Kotlin类不起作用。也许你可以向Jetbrains提出一个问题,以便他们可以修复它。

为了生成SerialVersionUID,您可以使用JDK的内置命令serialver

  

E:\ workspace \ target \ classes> serialver Address

     

地址:static final long serialVersionUID = -687991492884005033L;

其他用途examples

答案 1 :(得分:0)

我在Kotlin的youtrack中找不到这样的问题,所以请创建它。

如果您使用Idea,则可以为此目的创建实时模板。

有效serialVersionUID应如下所示:

class Test : Serializable {
    companion object {
        @JvmStatic private val serialVersionUID = 1
    }
}

答案 2 :(得分:0)

现在可以使用插件生成它!

我刚刚发布了一个插件click here来下载并安装,或者在IDEA / Android Studio中搜索GenerateSerialVersionUID来查找作者为Ouyangfeng的安装。如果您不知道如何使用它,请单击此处:https://github.com/yuanhoujun/intellij-generate-serial-version-uid-plugin

如果在使用过程中遇到任何问题,请在Github上提交问题,谢谢您