加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何在Groovy中序列化自定义对象

发布时间:2020-12-14 16:22:39 所属栏目:大数据 来源:网络整理
导读:这段代码…… class A implements Serializable{ String str int n}try{ def a= new A(str:'abc',n:7) def out= new ObjectOutputStream(new FileOutputStream('serializedObject.obj')) out.writeObject(a) out.close()}finally{}try{ def inp= new ObjectI
这段代码……

class A implements Serializable{
  String str
  int n
}

try{
  def a= new A(str:'abc',n:7)
  def out= new ObjectOutputStream(new FileOutputStream('serializedObject.obj'))
  out.writeObject(a)
  out.close()
}finally{}

try{
  def inp= new ObjectInputStream(new FileInputStream('serializedObject.obj'))
  def a2= inp.readObject()
  inp.close()
}finally{}

……产生错误……

java.lang.ClassNotFoundException: A
    at java_io_ObjectInput$readObject.call(Unknown Source)
    at otherRun.run(otherRun.groovy:16)

…当试图在第二个尝试块中重新加载对象时.当类是预定义的类(如java.util.List)时,它可以正常工作.上下代码在逐行转换为Java时也可以正常工作.

如何让它在Groovy中运行?

解决方法

将“A类”放入其自己的文件中,并确保“A.class”文件在您读取对象时可用(在类路径中).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读