当前位置: 首页 > 知识库问答 >
问题:

编译错误包com。fasterxml。杰克逊。批注不存在

周阳成
2023-03-14

下面的类显示问题-导入com。fasterxml。无法解析jackson-

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;


@JsonIgnoreProperties(ignoreUnknown=true)
public class MerchantDetailsDto {

运行干净安装时编译错误-

[ERROR] COMPILATION ERROR : 

[INFO] -------------------------------------------------------------

[ERROR] /Path/to/src/main/java/com/citruspay/common/dto/merchant/MerchantDetailsDto.java:[9,40] package com.fasterxml.jackson.annotation does not exist

[ERROR] /Path/to/src/main/java/com/citruspay/common/dto/merchant/MerchantDetailsDto.java:[11,2] cannot find symbol

  symbol: class JsonIgnoreProperties

pom定义是这样的,它位于项目的pom中,该项目被定义为当前项目的依赖项-

<dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>${jackson-core.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>${jackson-core.version}</version>
        </dependency>

<jackson-core.version>2.6.1</jackson-core.version>

我检查了这个组件的maven存储库,它似乎没有任何依赖项。

我尝试将版本更改为最新版本-2.10.0。pr1并尝试对依赖项项目进行maven更新,但找不到内部下载的jar。m2、该组件对应的目录结构有两条路径-

.m2/fasterxml/jackson/core/jackson注释

. m 2/repository/com/更快的xml/jackson/core/jackson-注释

我不确定哪一个是实际的版本,所以我尝试从这两个版本中删除现有的版本目录,但当我尝试maven update和clean install时,即使是同一个版本的jar也没有下载。

如有任何指示,我将不胜感激。

更新

依赖项项目上clean install命令的输出-

[INFO] Scanning for projects...
[INFO] 
[INFO] ------< com.project.path.to.project-dependency >------
[INFO] Building project-dependency 1.0-SNAPSHOT
[INFO] --------------------------------[ pom ]---------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ project-dependency ---
[INFO] 
[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ citruspay-spring-dependencies ---
[INFO] Installing /Path/to/dependency/project/pom.xml to /path to/.m2/repository/com/project/path/to/dependency/1.0-SNAPSHOT/project-dependency-1.0-SNAPSHOT.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.417 s
[INFO] Finished at: 2019-07-24T17:25:42+05:30
[INFO] ------------------------------------------------------------------------

共有1个答案

濮君植
2023-03-14

使用

    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.11.0</version>
    </dependency>

这将引入两个可传递的依赖项:

 类似资料:
  • 我想使用Spring的RestTemplate plus Jackson来使用Web服务。我已经学习了几本教程,并且已经达到了创建DAO的目的。这是我获取所有域对象的方法: 但我的Web服务不会立即返回Station对象数组,而是以这种方式返回一个更具语义的表达式: 所以我的问题是,我不知道如何“告诉”RestTemplate在“stations”指示符之后立即解析对象列表,而不创建临时对象,这似

  • 当我尝试反序列化汽车类时,我得到了下面的错误。杰克逊正试图在父类中的子元素中搜索字段。我如何确保杰克逊使用适当的子类型进行反序列化?我相信我需要使用混合/客户转换器。但我不确定如何在这个特定场景中使用它们。 注意:在我的例子中,除TestMain之外的所有类都在一个jar文件中,我不能修改源文件。 错误 线程"main"中的异常com.fasterxml.jackson.databind.exc.

  • 问题内容: 一年左右的时间,我读了一篇文章,解释了如何创建基本上是其他注释的容器的注释。这样,如果我在特定用例中始终使用相同的5个批注,则会创建一个包含它们的批注,而改用它。 不幸的是,我再也找不到该文章了,现在真的很想针对我的杰克逊配置进行此操作。 由于我自己找不到任何信息,所以我开始质疑自己的记忆。这可能还是我错了? 编辑 我想要的是这样的: 我的情况是,我有很多序列化用例,可以由具有不同配置

  • 问题内容: 我有一个包,其中导入了javax.servlet。和javax.servlet.http。,当我尝试在命令提示符下对其进行编译时,出现错误 软件包javax.servlet不存在 我使用JDK 1.7.0和Tomcat 6.0。 问题答案: 您需要将Tomcat 文件的路径添加到编译时类路径。 Java需要在类路径中查找导入的依赖项。否则,它将默认为上面示例中包含的当前文件夹。的是Wi

  • 我正在尝试向现有的企业项目添加maven支持。这是一个多模块项目,前两个模块的编译和打包没有问题,但我面临编译错误,我试图在多个模块中使用相同的依赖关系。我的结构是: 我支持在Eclipse上打开的项目,它没有显示任何错误。当我从父级运行时,它成功地安装了模块1和模块2,但在模块3上失败,表明,。包裹xxx。yyy和符号XXXYYY位于模块2和3的依赖项上列出的jar中。 由于两个模块都依赖于同一

  • 包javax.servlet不存在 我使用JDK1.7.0和Tomcat6.0。