com.esotericsoftware.kryo.KryoException:无法创建类(缺少no-arg构造函数):



我无法通过最简单的在scala上使用Kryo进行序列化的示例。 是否需要为此注册特定的序列化程序? 谢谢

val kryo  = new Kryo()
kryo.setRegistrationRequired(false)
kryo.register(classOf[scala.Tuple2[Any, Any]])
val intstringtuple = (100, "somestring")
val outStream = new ByteArrayOutputStream()
val output = new Output(outStream)
kryo.writeClassAndObject(output, obj)
output.flush()
val input = new com.esotericsoftware.kryo.io.Input(new ByteArrayInputStream(outStream.toByteArray))
val obj1 = kryo.readClassAndObject(input)

添加类似以下内容可解决此问题:

kryo.register(classOf[scala.Tuple2[Any, Any]], new com.twitter.chill.Tuple2Serializer)

相关内容

最新更新