Выпуск Springboot с версии 1.5.8 до версии 2.0 получает исключение "org.springframework.beans.factory.NoSuchBeanDefinitionException"

Gradle зависимость, связанная с kubernetes:

  "io.fabric8:spring-cloud-kubernetes-core:0.1.6",
  "io.fabric8:spring-cloud-starter-kubernetes:0.1.6",
  "org.springframework.cloud:spring-cloud-starter-sleuth:1.2.4.RELEASE",

Получение нижеприведенного исключения при обновлении springboot 1.5.6 до 2.0.0.

Для параметра 2 метода configurationUpdateStrategy в io.fabric8.spring.cloud.kubernetes.reload.ConfigReloadAutoConfiguration$ConfigReloadAutoConfigurationBeans требуется компонент типа org.springframework.cloud.context.restart.RestartEndpoint, который не может быть найден.

  • Метод bean-компонента "restartEndpoint" не загружен, поскольку @ConditionalOnClass не нашел требуемый класс "org.springframework.integration.monitor.IntegrationMBeanExporter"

  • Метод компонента "restartEndpointWithoutIntegration" в "RestartEndpointWithoutIntegrationConfiguration" не загружен, поскольку @ConditionalOnEnabledEndpoint обнаружил свойство management.endpoint.restart.enabled со значением false

1 ответ

В зависимости от ваших требований вы можете выполнить одно из следующих действий:

  1. запрещать ConfigReloadAutoConfiguration если вам это не нужно:

    @SpringBootApplication(exclude = ConfigReloadAutoConfiguration.class)
    public class SomeApplication {
        ...
    }
    
  2. Добавьте следующее в ваш application.propertiesтак же, как сообщение об ошибке говорит:

    management.endpoint.restart.enabled = true
    
Другие вопросы по тегам