2013-02-07 63 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包含在執行類路徑中。