java.lang.NoSuchFieldError: com/fasterxml/джексон/аннотация/JsonInclude$Включить.USE_DEFAULTS

#java #spring #jackson #jackson-annotations

Вопрос:

Я использую spring 5.3.7 , и когда я запускаю свое приложение, оно возвращает ошибку ниже:

 Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter]: Constructor threw exception; nested exception is java.lang.NoSuchFieldError: com/fasterxml/jackson/annotation/JsonInclude$Include.USE_DEFAULTS  

Я использую jackson-annotations-2.10.3.jar , который реализует перечисление USE_DEFAULTS. Я надеюсь, что кто-нибудь сможет мне помочь.

Комментарии:

1. проверьте свой график зависимостей, чтобы узнать, есть ли у вас другие версии Джексона

2. Пожалуйста, отредактируйте вопрос, чтобы ограничить его конкретной проблемой с достаточной детализацией для определения адекватного ответа.

3. Большое спасибо. Проблема была решена удалением старых версий моих библиотек.

Ответ №1:

Я не уверен, но вам следует один раз проверить наличие аннотаций, таких как @Service, @Controller, @Respository, есть вероятность, что вы пропустили какую-либо из аннотаций. просто проверьте это внимательно, это может вам помочь.

Ответ №2:

Чтобы устранить эту ошибку, мы должны очистить все файлы .class и перекомпилировать их, чтобы убедиться, что все файлы обновлены.

Если эта ошибка все еще существует во время выполнения, возможно, зависимость, на которую ссылаются во время компиляции, отличается от версии во время выполнения. Здесь необходимо проверить, не ошибочны ли различные пути и версии.

Проекты Maven обычно выполняют mvn clean.

Надеюсь, ваша проблема может быть решена