我如何使用Jackson从字符串创建ObjectNode?
我试过了:
ObjectNode json = new ObjectMapper().readValue("{}", ObjectNode.class);
Run Code Online (Sandbox Code Playgroud)
但是得到
线程“主”中的异常com.fasterxml.jackson.databind.JsonMappingException:属性“类型”的设置器定义冲突:jdk.nashorn.internal.ir.Symbol#setType(1 params)vs jdk.nashorn.internal.ir.Symbol #setType(1个参数)
我希望能够读取JSON字符串并添加/修改一些值。
首先,错误消息表明您要构建一个jdk.nashorn.internal.ir.ObjectNode,而我猜您实际上打算构建一个com.fasterxml.jackson.databind.node.ObjectNode(对于 Jackson 2.x)。检查您的进口。
但是,如果您只想构建一个空的ObjectNode,那么只需使用
JsonNodeFactory.instance.objectNode()
Run Code Online (Sandbox Code Playgroud)
如果由于某种原因你真的想通过解析一个空的 JSON 对象来做到这一点,那么使用这个:
ObjectNode json = (ObjectNode) new ObjectMapper().readTree("{}");
Run Code Online (Sandbox Code Playgroud)
但这只是不愉快。
您使用了错误的导入。
它应该是
com.fasterxml.jackson.databind.node.ObjectNode
Run Code Online (Sandbox Code Playgroud)
不:
jdk.nashorn.internal.ir.ObjectNode
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10746 次 |
| 最近记录: |