Я знаю, що це старе питання, але я не натрапив на жоден відповідь, який би вирішив цю проблему для мене, тому я запропоную своє рішення.
Примітка. Я думав, що проблема могла бути такою , але моя проблема не була пов'язана із впровадженням одного і того ж інтерфейсу двічі. Використання @Qualitier
змусило мою проблему піти, але це була пов'язка, а не правильне рішення, тому я з цим не погодився.
Передумови
Мені доводиться підтримувати старий проект, який пережив різні версії весни та оновив лише окремі модулі, тому, щонайменше, потрібен рефакторинг. Я спочатку отримав дублікат випуску бобів, і поводячись з речами, змінив питання вперед і назад між випуском ОП та дублюючим бобом, хоча був лише один боб; навігація до дублюючих бобів завжди йшла до одного класу.
ПИТАННЯ
Випуск був присутнім у @Repository
класі, який був @Autowired
у @Service
класі, який також мав @ComponentScan
анотацію. Я помітив, що в мене також була пружина, application-config.xml
яка робила context:component-scan
базовий пакет, що, на мою думку, був оригінальним підходом у старих версіях Spring. Я був у процесі створення нової гілки, взявши частини старої гілки та новішої гілки у проекті підтримки, який використовувався в різних проектах, які розроблялися протягом декількох років, і саме тому був такий поєднання і відповідність методологій.
ПРОСТЕ РІШЕННЯ
Оскільки @ComponentScan
вже був реалізований більш сучасний підхід до використання, я просто усунув application-config.xml
і питання було вирішено.