首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Jackson Json序列化Javaparser对象

用Jackson Json序列化Javaparser对象
EN

Stack Overflow用户
提问于 2017-07-06 07:25:37
回答 1查看 280关注 0票数 0

我试图用Jackson序列化Javaparser对象,但它非常复杂,因为它是第三方库(我不能更改/注释代码),而且其中存在循环依赖关系。

我的项目的结构如下:

对象Analysis包含一些可能相互引用的WrappedNode列表。每个WrappedNode包含一个JavaParser CallableDeclaration

当我试图映射我的Analysis时,我得到了一个错误:

代码语言:javascript
复制
JsonMappingException: Infinite recursion (StackOverflowError) (through reference chain: com.github.javaparser.metamodel.PropertyMetaModel["containingNodeMetaModel"]->com.github.javaparser.metamodel.SimpleNameMetaModel["declaredPropertyMetaModels"]->java.util.ArrayList[0]->com.github.javaparser.metamodel.PropertyMetaModel["containingNodeMetaModel"]...

因此,为了消除无限递归,我知道我必须使用@JsonIdentityInfo(generator=ObjectIdGenerators.IntSequenceGenerator.class, property="@id"),这是我在WrappedNode类上所做的,但我认为我也应该使用混合注释注释JavaParser类。

问题是有很多字段和很多类,我不知道该注释哪些字段和类。

谢谢你的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-06 07:39:34

您可以只使用由JsonPrinter提供的JavaParser类。这是一个非常新的添加(我认为是3.2.8版),它不可能完美,但你可以使用它超级,超级容易

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44942307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档