java.lang.ClassNotFoundException: com.fasterxml.jackson.annotation.JsonInclude $ Value
Ich versuche meine konvertieren der json-string an java-Objekt, und ich bin immer Fehler
Exception in thread "main" java.lang.NoClassDefFoundError: com/fasterxml/jackson/annotation/JsonInclude$Wert
bei com.fasterxml.jackson.databind-Methode.cfg.MapperConfig.(MapperConfig.java:45)
bei com.fasterxml.jackson.databind-Methode.ObjectMapper.(ObjectMapper.java:535)
bei com.fasterxml.jackson.databind-Methode.ObjectMapper.(ObjectMapper.java:452)
bei com.allianz.cmis.util.ApacheHttpClientGet.main(ApacheHttpClientGet.java:65)
Verursacht durch: java.lang.ClassNotFoundException: com.fasterxml.jackson.Anmerkung.JsonInclude$Wert
bei java.net.URLClassLoader$1.run(URLClassLoader.java:366)
bei java.net.URLClassLoader$1.run(URLClassLoader.java:355)
bei java.Sicherheit.AccessController.doPrivileged(Native Method)
bei java.net.URLClassLoader.findClass(URLClassLoader.java:354)
bei java.lang.ClassLoader.loadClass(ClassLoader.java:425)
bei der sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
bei java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 4 weitere
Hier mein json-string und mein code-snippet
json-string
{'ctpnsw': [{'abc' , 'def' }]}
Modell
public class Fields {
private List<String> ctpnsw;
public List<String> getCtpnsw() {
return ctpnsw;
}
public void setCtpnsw(List<String> ctpnsw) {
this.ctpnsw = ctpnsw;
}
}
Java-code
ObjectMapper mapper = new ObjectMapper();
List<Fields> list = mapper.readValue(output, TypeFactory.defaultInstance().constructCollectionType(List.class,Fields.class));
System.out.println(list);
InformationsquelleAutor der Frage user327126 | 2016-02-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie über das hinzufügen dieser zu Ihrer pom.xml
InformationsquelleAutor der Antwort MonoThreaded
Ich hatte die gleiche Fehlermeldung. In meinem Fall, Jackson Bestand aus mehreren JAR-Dateien. Leider hatten Sie verschiedene Versionen von jackson-Kern-und jackson-Anmerkungen, die zu den oben genannten Ausnahme.
Vielleicht haben Sie nicht über die jackson-annotation JAR in den classpath, zumindest nicht in der richtigen version. Sie analysieren die verwendeten library-Versionen mit dem Befehl
mvn dependency:tree
.InformationsquelleAutor der Antwort Marcus K.
Jackson marshalling/unmarshalling erfordert die folgenden jar-Dateien der gleichen version.
jackson-core -
jackson-databind -
jackson-annotations
Stellen Sie sicher, dass Sie Hinzugefügt haben alle diese mit der gleichen version in den classpath. In Ihrem Fall jackson-annotations fehlt im classpath.
InformationsquelleAutor der Antwort Vino
Bekommen alle 3 jackson Gläser, und fügen Sie Sie in das build-Pfad:
https://mvnrepository.com/artifact/com.fasterxml.jackson.core
InformationsquelleAutor der Antwort Baked Inhalf
dies ist eine version problem
ändern der version > 2.4 1.9 lösen
zu
InformationsquelleAutor der Antwort Jijun Jiang