我正在使用Jackson罐子(核心2.3.1,注释2.2.3,databind 2.3.1,来自下载页面的所有最新信息)读取Json文件,抓取我需要将其放入新对象中并进行写/打印输出该对象到文件或屏幕。
我看到大多数例子都说这很容易
ObjectMapper mapper = new ObjectMapper();
mapper.writeValueAsString(object);
要么
ObjectWriter mapper = new ObjectMapper().writer().withDefaultPrettyPrinter();
writer.writeValueAsString(object);
虽然我有必要的罐子,但我不断收到错误消息
ClassNotFoundException:com.fasterxml.jackson.annotation.JsonPropertyDescription。
深入研究后,我发现github中用于jackson的
JsonPropertyDescription
类未与注释2.2.3 jar打包在一起。那么它是否已被弃用,并且有某种新的方式我还没有看到要获取一个对象并将其打印到json的方法,还是该类被意外地排除在较新的版本之外?
最佳答案
不知道您是否已经通过更新罐子解决了这个问题,但是这里有一些答案:
深入研究后,我发现github上杰克逊的JsonPropertyDescription类未与注释2.2.3 jar打包在一起。
这是new feature in 2.3。
有什么新方法我没见过要拿一个对象并将其打印到json吗?
我不这么认为:writeValueAsString() 2.3.3(不建议弃用)。
似乎有人使用similar problem,他们建议的解决方案基本上是“更新您的jar”。询问者没有回复,所以我们不知道这样是否有效。