首先,我为再次提出这个问题而道歉.最后一次是3个月前,我发现了一种权宜之计,这种方法可以用来进行概念验证.不幸的是,我真的需要让它完全正常工作
作为当前项目的一部分,我需要能够在向Spring服务器发送请求和从Spring服务器发送请求时自动将对象自动序列化为JSON.我被告知要用杰克逊这个.问题是,每次我将Jackson添加到它将构建的POM时,但是当servlet找不到com.fasterxml.jackson.core.JsonProcessingException时抛出java.lang.NoClassDefError.我已经检查过,JsonProcessingException是应该在WAR中预期的地方.
我的怀疑是,导致Spring试图为servlet自动装配Jackson解析器,而且无法找到所有依赖项.我不知道为什么会这样,因为它们应该被Maven正确引入.
我的pom.xml与公司细节一般化:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.company.department</groupId>
<artifactId>project</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>project-restservice</artifactId>
<packaging>war</packaging>
<name>projectMaven Restservice</name>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>project-common</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>project-processor</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>project-ui-service</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.qualcomm.qes.logging</groupId>
<artifactId>project-logger</artifactId>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>org.slf4j</artifactId>
<groupId>com.springsource.slf4j.api</groupId>
</exclusion>
<exclusion>
<artifactId>org.slf4j</artifactId>
<groupId>com.springsource.slf4j.log4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.qualcomm.qes.sso.downstream</groupId>
<artifactId>sso-downstream-auth</artifactId>
<exclusions>
<exclusion>
<artifactId>bcprov-jdk15on</artifactId>
<groupId>bouncycastle</groupId>
</exclusion>
</exclusions>
</dependency>
<!-- SpringSource -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>org.springframework.web.servlet</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId> …Run Code Online (Sandbox Code Playgroud)