虽然我已经注册了
private static inner class EntryWithID
kryo抛出
java.lang.IllegalArgumentException (Class is not registered: shared.SharedObjectFactory$Segment$EntryWithID ).
kryo.register(Class.forName("shared.SharedObjectFactory$Segment$EntryWithID"));
kryo.register(Array.newInstance(Class.forName("shared.SharedObjectFactory$Segment$EntryWithID"), 0).getClass());
我猜,问题出在深层嵌套的内部类EntryWithID
上。我在注册时做错了什么吗?
最佳答案
您可以启用Kryo的跟踪日志并检查。
由于 Kryo 使用 Minlog 库进行日志记录,因此您可以通过添加 com.esotericsoftware.minlog.Log.TRACE();
来启用跟踪级别日志。到源代码。
启用 TRACE 级别日志将打印有关在 Kryo 中注册的所有类的详细信息。
关于java - Kryo 类(class)注册,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31576169/