java.lang.noclassdeffounderror: com/fasterxml/jackson/core/util/jacksonfeature

1.问题

环境:

  • springboot2.3.10.RELEASE
  • jdk1.8
  • elasticsearch8.8.1

根据官网,使用es时pom文件需要引入json工具,这里使用了jackson-databind:

<dependency>
    <groupId>co.elastic.clients</groupId>
    <artifactId>elasticsearch-java</artifactId>
    <version>8.8.1</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.12.7.1</version>
</dependency>

但是在运行时报了以下错误:

往下翻,发现是找不到JacksonFeature:

2.Debug

猜想可能是因为没有导入jackson-core依赖,检查pom文件,发现已经导入了jackson-core依赖

搜索发现,jackson-core的JacksonFeature依赖在jackson-core2.12.0之后的版本才引入,这里的依赖版本是2.11.4,所以改下依赖就好了

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.12.7.1</version>
    <exclusions>
        <exclusion>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
        </exclusion>
        </exclusions>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.12.0</version>
</dependency>

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注