Класс Jackson ObjectMapper больше не в Джексоне-Датабинд?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Класс Jackson ObjectMapper больше не в Джексоне-Датабинд?

Сообщение Anonymous »

Я обновляю существующее приложение от Spring-Boot 2.x до 3.3.0 и Jackson 2.17.1. Spring Boot Pults в Spring Framework 6.1.8. < /P>
Кажется, есть класс от Джексона-Датабинд, который исчез или был перемещен. Я надеюсь, что кто -то сможет указать, что случилось с этим классом, потому что я не могу найти четких подробностей об этом онлайн.Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.boot.actuate.autoconfigure.endpoint.jackson.JacksonEndpointAutoConfiguration': Lookup method resolution failed
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.checkLookupMethods(AutowiredAnnotationBeanPostProcessor.java:497)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:367)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineConstructorsFromBeanPostProcessors(AbstractAutowireCapableBeanFactory.java:1296)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1191)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:975)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:962)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:624)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:335)

Это ничего не происходит внутри моего кода, это происходит внутри Spring Framework, когда он пытается создать этот внутренний боб внутри Spring Boot:
strong>орг.springframework.boot.actuate.autoconfigure.endpoint.jackson.jacksonendPointAutoConfiguration> pointpointpoint.jackson. Основная проблема, по-видимому, заключается в том, что этот класс из библиотеки Джексона-Датабинда не может быть найдена:
sstrong> com.fasterxml.jackson.databind.objectmapperобразноpackage org.springframework.boot.actuate.autoconfigure.endpoint.jackson;

import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;

import org.springframework.boot.actuate.endpoint.jackson.EndpointObjectMapper;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.autoconfigure.jackson.JacksonAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;

/**
* {@link EnableAutoConfiguration Auto-configuration} for Endpoint Jackson support.
*
* @author Phillip Webb
* @since 3.0.0
*/
@Configuration(proxyBeanMethods = false)
@AutoConfigureAfter(JacksonAutoConfiguration.class)
public class JacksonEndpointAutoConfiguration {

@Bean
@ConditionalOnProperty(name = "management.endpoints.jackson.isolated-object-mapper", matchIfMissing = true)
@ConditionalOnClass({ ObjectMapper.class, Jackson2ObjectMapperBuilder.class })
public EndpointObjectMapper endpointObjectMapper() {
ObjectMapper objectMapper = Jackson2ObjectMapperBuilder.json()
.featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,
SerializationFeature.WRITE_DURATIONS_AS_TIMESTAMPS)
.serializationInclusion(Include.NON_NULL)
.build();
return () -> objectMapper;
}

}
< /code>
Это может создать проблему для тех, кто пытается использовать Джексон и Спринг вместе. Вот график зависимостей (от зависимости Maven: дерево) < /p>
[INFO] +- org.springframework.boot:spring-boot-starter-web:jar:3.3.0:compile
[INFO] | +- (org.springframework.boot:spring-boot-starter:jar:3.3.0:compile - version managed from 3.3.0; omitted for duplicate)
[INFO] | +- org.springframework.boot:spring-boot-starter-json:jar:3.3.0:compile (version managed from 3.3.0)
[INFO] | | +- (org.springframework.boot:spring-boot-starter:jar:3.3.0:compile - version managed from 3.3.0; omitted for duplicate)
[INFO] | | +- (org.springframework:spring-web:jar:6.1.8:compile - version managed from 6.1.8; omitted for duplicate)
[INFO] | | +- com.fasterxml.jackson.datatype:jackson-datatype-jdk8:jar:2.17.1:compile (version managed from 2.17.1)
[INFO] | | | \- (com.fasterxml.jackson.core:jackson-core:jar:2.17.1:compile - version managed from 2.17.1; omitted for duplicate)
[INFO] | | +- com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.17.1:compile (version managed from 2.17.1; scope not updated to compile)
[INFO] | | | +- com.fasterxml.jackson.core:jackson-annotations:jar:2.17.1:compile (version managed from 2.17.1)
[INFO] | | | \- (com.fasterxml.jackson.core:jackson-core:jar:2.17.1:compile - version managed from 2.17.1; omitted for duplicate)
[INFO] | | \- com.fasterxml.jackson.module:jackson-module-parameter-names:jar:2.17.1:compile (version managed from 2.17.1)
[INFO] | | \- (com.fasterxml.jackson.core:jackson-core:jar:2.17.1:compile - version managed from 2.17.1; omitted for duplicate)


Подробнее здесь: https://stackoverflow.com/questions/785 ... n-databind
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»