2013-02-07 59 views
1

我想将Json字符串转换为HashMap,但它不起作用。 我的代码:Json字符串到HashMap

ObjectMapper mapper = new ObjectMapper(); 
Map<String,Object> map = mapper.readValue("Json String placeholder", Map.class); 

我得到以下异常:

java.lang.NoClassDefFoundError: com/fasterxml/jackson/annotation/JsonAutoDetect 
at com.fasterxml.jackson.databind.introspect.VisibilityChecker$Std.<clinit>(VisibilityChecker.java:172) 
at com.fasterxml.jackson.databind.ObjectMapper.<clinit>(ObjectMapper.java:195) 
..... 

我在做什么错?还有其他可能性吗?还是缺少什​​么?

+3

NoClassDefFoundError通常表示您有类路径问题。 –

+2

检查你的类路径。某些jar文件丢失。 –

+0

杰克逊 - 标注失踪。谢谢! –

回答

1

NoClassDefFoundError并不特定于您在JSON中的特定用途,但会在运行时无法在JVM找到编译时可用的类时发生。这怎么可能发生?如果您的汇编classpath与您的执行不同,那么最常发生这种情况。我已经看到它与ant很多。确保相关的jar包含在执行类路径中。