杰克逊JSON映射“NoClassDefFoundError:JsonPropertyDescription”

时间:2014-02-18 17:49:03

标签: java json jar jackson noclassdeffounderror

我正在使用Jackson jars(核心2.3.1,注释2.2.3,数据绑定2.3.1,来自下载页面的所有最新内容)来读取Json文件,抓住我需要把它放入一个新对象和将对象写入/打印输出到文件或屏幕。

我见过大多数例子都说它和

一样简单
ObjectMapper mapper = new ObjectMapper();
mapper.writeValueAsString(object);

或者

ObjectWriter mapper = new ObjectMapper().writer().withDefaultPrettyPrinter();
writer.writeValueAsString(object);

虽然我有必要的jar,但我一直收到错误 ClassNotFoundException:com.fasterxml.jackson.annotation.JsonPropertyDescription。

深入挖掘后,我发现杰克逊的github中的JsonPropertyDescription类是没有打包注释2.2.3 jar

所以它已经被弃用了,有一些新的方法我没有看到把对象打印到json,或者这个类是否被意外地排除在新版本之外?

1 个答案:

答案 0 :(得分:0)

不确定你是否已经通过更新你的罐子解决了这个问题,但是这里有一些答案:

  

深入挖掘后,我发现jackson的github中的JsonPropertyDescription类未附带注释2.2.3 jar。

这是new feature in 2.3

  

是否有一些新的方法我没有看到拍摄对象并将其打印到json?

我不这么认为:writeValueAsString() 2.3.3(它没有被弃用)。

看起来有人有similar problem,他们建议的解决方案基本上是“更新你的罐子”。提问者没有回复,所以我们不知道这是否有效。