我有一个JRuby类,其中包含一个实例变量,它是一个Java对象。正如您可能知道的,JRuby在序列化对象方面有很多问题,因此我只想跳过这个对象。
如何才能做到这一点?
发布于 2009-09-20 18:01:40
您可能需要编写自己的自定义Marshal函数来排除Java实例变量。有关非常简单的示例,请参阅http://www.linuxtopia.org/online_books/programming_books/ruby_tutorial/Reflection_ObjectSpace_and_Distributed__Ruby_Custom_Serialization_Strategy.html
您需要更改代码以自定义编组除Java实例之外的所有对象:没有要排除的通用功能,只需在类级别上定义整个编组方法。您可以使用反射来获取实例变量列表,删除不需要的实例变量,并编组剩余的实例变量。没有那么难,但也不再是一行了。
https://stackoverflow.com/questions/1445155
复制相似问题