Excepción en el hilo “principal” java.lang.NoSuchMethodError: com.fasterxml.jackson.core.JsonFactory.requiresPropertyOrdering () Z

Necesito convertir json en pojo. Decidí usar jackson y agregué jackson-core-2.2.0.jar, jackson-databind-2.4.4.jar y jackson-annotations-2.1.2.jar al classpath de mi proyecto

Creé siguiente clase Main :

 import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; import java.util.List; import com.fasterxml.jackson.core.JsonGenerationException; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.core.JsonGenerationException; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.DeserializationFeature; public class Json { private static String SRC= ""; public static void main(String[] args) { AwardList awardList = null; ObjectMapper mapper = new ObjectMapper(); try{ awardList = (AwardList) mapper.readValue(new URL(SRC), AwardList.class); }catch (JsonGenerationException e){ e.printStackTrace(); } catch (JsonMappingException e){ e.printStackTrace(); } catch (IOException e){ e.printStackTrace(); } System.out.println(awardList); } } 

Y después de la clase AwardList :

 public class AwardList { private Flights[] flights; private String[] connections; private SaverEconomy saverEconomy; private StandartEconomy standartEconomy; private SaverBusiness saverBusiness; private StandartFirst standartFirst; private SaverFirst saverFirst; public Flights[] getFlights() { return flights; } public void setFlights(Flights[] flights) { this.flights = flights; } public SaverEconomy getSaverEconomy() { return saverEconomy; } public void setSaverEconomy(SaverEconomy saverEconomy) { this.saverEconomy = saverEconomy; } public StandartEconomy getStandartEconomy() { return standartEconomy; } public void setStandartEconomy(StandartEconomy standartEconomy) { this.standartEconomy = standartEconomy; } public SaverBusiness getSaverBusiness() { return saverBusiness; } public void setSaverBusiness(SaverBusiness saverBusiness) { this.saverBusiness = saverBusiness; } public StandartFirst getStandartFirst() { return standartFirst; } public void setStandartFirst(StandartFirst standartFirst) { this.standartFirst = standartFirst; } public SaverFirst getSaverFirst() { return saverFirst; } public void setSaverFirst(SaverFirst saverFirst) { this.saverFirst = saverFirst; } public String[] getConnections() { return connections; } public void setConnections(String[] connections) { this.connections = connections; } } 

Quiero convertir json en pojo y guardarlo en la base de datos. Sigo recibiendo el siguiente error:

 Exception in thread "main" java.lang.NoSuchMethodError: com.fasterxml.jackson.core.JsonFactory.requiresPropertyOrdering()Z at com.fasterxml.jackson.databind.ObjectMapper.(ObjectMapper.java:457) at com.fasterxml.jackson.databind.ObjectMapper.(ObjectMapper.java:379) at Json.main(Json.java:72) 

Estaba obteniendo exactamente el mismo problema. Estaba usando Maven para la administración de dependencias y había agregado la dependencia para el módulo jackson-databind solo así

  com.fasterxml.jackson.core jackson-databind ${jackson.version}  

y luego lo resolví haciendo esto … Agregué sus dependencias transitivas de forma explícita con la misma versión de jackson.vendida para cada uno de ellos en el archivo pom.xml, como se indica aquí

  com.fasterxml.jackson.core jackson-annotations ${jackson.version}   com.fasterxml.jackson.core jackson-core ${jackson.version}  

Vine aquí con un problema similar en Google App Engine. Así es como lo arreglé.

Primero corrí:

 mvn dependency:tree 

Para encontrar quién está usando la versión anterior. Luego excluí eso de la dependencia ofensiva así:

  com.google.appengine.tools appengine-gcs-client 0.6   com.fasterxml.jackson.core jackson-core    

Luego agregué la versión más nueva de la dependencia en mi pom.xml:

  com.fasterxml.jackson.core jackson-core 2.8.7  

Espero que esto ayude a otros que tropiecen aquí.

Tuve el mismo problema. Hubo cierta incompatibilidad entre la versión 2.6.3 de jackson y otra dependencia (graphaware-framework-embedded).

Podría resolver el problema simplemente eliminando la dependencia de jackson en mi propio pom y simplemente dejar que la otra dependencia cargue la versión de jackson que necesite.