我有一个在本地可以正常工作的项目,但是当我向服务器部署war并尝试执行Rest方法时,我得到了:
java.lang.NoSuchMethodError: com.fasterxml.jackson.core.JsonFactory.requiresPropertyOrdering()Z
com.fasterxml.jackson.databind.ObjectMapper.<init>(ObjectMapper.java:474)
com.fasterxml.jackson.databind.ObjectMapper.<init>(ObjectMapper.java:393)
com.fasterxml.jackson.jaxrs.json.JsonMapperConfigurator.getDefaultMapper(JsonMapperConfigurator.java:44)
com.fasterxml.jackson.jaxrs.base.ProviderBase.locateMapper(ProviderBase.java:866)
我知道这与重叠的罐子有关,但是找不到解决方案。当我使用JHades时,我收到与Json或Jackson相关的消息:
file:/C:/Users/justas/.m2/repository/com/google/http-client/google-http-client-jackson2/1.20.0/google-http-client-jackson2-1.20.0.jar overlaps with
file:/C:/Users/justas/.m2/repository/ppp/ppp/1.0/ppp-1.0.jar - total overlapping classes: 5 - same classloader ! This is an ERROR!
file:/C:/Users/justas/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.5.4/jackson-core-2.5.4.jar overlaps with
file:/C:/Users/justas/.m2/repository/ppp/ppp/1.0/ppp-1.0.jar - total overlapping classes: 79 - same classloader ! This is an ERROR!
与Json或Jackson相关的Pom.xml片段:
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>2.22.</version>
</dependency>
我试图删除或更换罐子,但是它不起作用。如何解决这个问题呢?
最佳答案
添加并像魅力一样工作:
<dependency>
<groupId>com.owlike</groupId>
<artifactId>genson</artifactId>
<version>1.4</version>
</dependency>