Deux Maven Dépendance pour les plus récentes et vieux conflits de version
Suis à l'aide de spring-data-dynamoDB projet de ici, comme son pom.xml ils ont utilisé 1.6.9.1 version de aws-java sdk, mais j'ai besoin d'utiliser la dernière version de aws-java sdk pour mon projet pour l'utilisation de certaines de ses caractéristiques à mettre en œuvre Amazon s3. Si je comprend sa dépendance,
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
<version>1.7.9</version>
</dependency>
suis une exception comme suit,
12:51:25.298 [main] DEBUG o.s.b.f.s.DefaultListableBeanFactory - Retrieved dependent beans for bean '(inner bean)': [_relProvider]
12:51:25.307 [main] ERROR o.s.w.c.ContextLoader - Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.hateoas.config.HypermediaSupportBeanDefinitionRegistrar$Jackson2ModuleRegisteringBeanPostProcessor#0': Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '_halObjectMapper': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.fasterxml.jackson.databind.ObjectMapper]: Constructor threw exception; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.core.JsonFactory.requiresPropertyOrdering()Z
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:547) ~[spring-beans-4.0.2.RELEASE.jar:4.0.2.RELEASE]
.......
.......
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name '_halObjectMapper': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.fasterxml.jackson.databind.ObjectMapper]: Constructor threw exception; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.core.JsonFactory.requiresPropertyOrdering()Z
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1076) ~[spring-beans-4.0.2.RELEASE.jar:4.0.2.RELEASE]
.......
.......
J'ai essayé les exclusions ci-dessous et aussi le même résultat,
<dependency>
<groupId>org.socialsignin</groupId>
<artifactId>spring-data-dynamodb</artifactId>
<version>1.0.0-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
</exclusion>
</exclusions>
</dependency>
Est-il possible d'utiliser la dernière version de aws-java sdk dans mon projet maintenant?? ou d'autre printemps-données-dynamoDB pom.xml doivent être mis à jour si seulement, je suis en mesure de l'utiliser ou quoi??
Grâce Michaellavelle pour ce formidable projet. Il m'aide beaucoup pour remplir DynamoDB partie.
OriginalL'auteur jAddict | 2014-05-23
Vous devez vous connecter pour publier un commentaire.
Merci @user944849. Le problème, c'est jackson libs utilisées dans aws-java sdk qui est inférieur à la version de dans printemps-données-repos-webmvc et les conflits avec elle, donc en excluant jackson libs de aws-java sdk construit correcte. La Solution que j'ai est,
Je suis incapable de poster une réponse au début à cause de la réputation. Cela peut être utile pour d'autres personnes, coincé comme moi. Merci.
Je vous remercie. J'ai eu un problème similaire quand j'ai ajouté Google Cloud Storage pour mon projet. Dans mon cas, à l'exclusion de jackson-core fait le travail.
OriginalL'auteur jAddict
Pour une raison quelconque à l'exclusion de jackson à partir d'aws-java ne fonctionne pas pour moi.
À la recherche à la question, il ressemble à jackson n'est pas disponible, ou que nous avons la mauvaise version flottant autour dans le projet. Cette méthode semble avoir été ajouté dans 2.3.0, la dernière version de jackson. J'ai ajouté une dépendance à la dernière version de jackson, et mon code est maintenant heureux.
Je ne suis pas sûr si l'annotation et databind sont nécessaires. Aussi, je travaille sur un projet énorme, de sorte que les différentes formes de jackson pourrait être à venir à partir de divers autres dépendances, jersey, google-http-client-jackson2. Donc, il est également sage de regarder le graphe de dépendances maven pour voir où tout jackson viennent.
<dependencies>
liste (donc de les mettre au début du classpath).Merci! J'ai eu le même problème (dans un uber-jar création) - a tout essayé, c'était la seule chose qui a fonctionné.
OriginalL'auteur Peter Dietz
L'erreur est
NoClassDefFound for com.fasterxml.jackson.core.JsonFactory.requiresPropertyOrdering
. J'ai cherché pour cette classe dans GrepCode et a découvert qu'il est dans lecom.fasterxml.jackson.core:jackson-core
de la bibliothèque. Ma conjecture est que les deux versions de laaws-java-sdk
bibliothèque vous essayé sont en spécifiant différentes jackson-bibliothèque de base de versions que de dépendances transitives. Votre demande peut être explicitement en fonction dejackson-core
comme bien d'une version antérieure à celle requise par la plus tardaws-java-sdk
. Le projet doit utiliser une version de jackson-core qui contient le requiresPropertyOrdering méthode. Vous devriez être capable de voir toutes les dépendances transitives en exécutantmvn dependency:tree
(ou l'équivalent dans votre IDE).Une solution est d'ajouter le
jackson-core
bibliothèque à un<dependencyManagement>
bloc dans le POM du projet (ou le parent POM) assurez-vous que la bonne version est utilisée.OriginalL'auteur user944849