У меня есть приложение Spring Boot, которое я недавно перенес с 1.x.x до 2.x.x. Я использую несколько сторонних библиотек/банок для проведения некоторых регистраций метрик, используя Prometheus.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]
< /code>
Таким образом, как вы видите, они имеют немного разные FQDN (полные квалифицированные доменные имена или пути упаковки, и я упростил его для этого примера, как вы можете видеть), но основной класс - это то же имя, поэтому я думаю, что Spring пытается выяснить, какой бобы создать и сбой. Это совершенно смущает меня, и я посмотрел на код/библиотеки в Intellij с Spring 1.x.x из старого кода филиала, и это исключение никогда не было выброшено (его игнорировали весной 1.x.x или что -то в этом роде?). Я также отмечу, что код хорошо компилирует, но сбое во время выполнения (имеет смысл) < /p>
было лучшим разрешением здесь? Должен ли я просто сказать Spring не сканировать один из этих классов FQDN, так что он создает только 1 фасоль в контексте приложения? Помните, что это сторонние либерации, которые Я не могу редактировать .>
Подробнее здесь: https://stackoverflow.com/questions/676 ... ow-to-excl
Приложение Spring Boot "Имя боба для конфликтов класса бобов с существующими" - Как исключить пакет/класс из сторонней б ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение