Приложение Spring Boot «имя компонента для класса компонента конфликтует с существующим» – как исключить пакет/класс из JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Приложение Spring Boot «имя компонента для класса компонента конфликтует с существующим» – как исключить пакет/класс из

Сообщение Anonymous »

У меня есть приложение Spring Boot, которое я недавно перенес с версии 1.x.x на версию 2.x.x. Я использую несколько сторонних библиотек/JAR-файлов для регистрации показателей с помощью Prometheus.
Проблема в том, что у меня есть (2) Java-класса с именем PrometheusServletAutoConfiguration, которые оба аннотированы. с @Configuration, и я получаю печально известное исключение Spring:

Код: Выделить всё

org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name 'prometheusServletAutoConfiguration' for bean class [com.my.package.path1.PrometheusServletAutoConfiguration] conflicts with existing, non-compatible bean definition of same name and class [com.my.package.path2.PrometheusServletAutoConfiguration]
Итак, как вы видите, у них немного разные полные доменные имена (полные доменные имена или пути к пакетам, И я упростил их для этого примера, как вы можете видеть), но основной класс тот же name, поэтому я думаю, что Spring пытается выяснить, какой компонент создать, но терпит неудачу. Это меня крайне сбивает с толку, и я просмотрел код/библиотеки в IntelliJ с Spring 1.x.x из старого кода ветки, и это исключение никогда не вызывалось (было ли оно проигнорировано в Spring 1.x.x или что-то в этом роде). ?). Я также отмечу, что код компилируется нормально, но во время выполнения происходит сбой (имеет смысл)
Какое здесь лучшее разрешение? Должен ли я просто сказать Spring НЕ сканировать полное доменное имя одного из этих классов, чтобы он создавал только 1 bean-компонент в контексте приложения? Помните, что это сторонние библиотеки, которые я не могу редактировать.
Я использую @SpringBootApplication на своей Java класс, содержащий основной метод.

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

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

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

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

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

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

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