IntelliJ "Не удалось автоувеличивать". инспекции ", [...] более одного bean" для Spring репозиториев JPA

В нашем коде имеется несколько репозиториев Spring JPA, по одному для каждого из наших классов моделей. Они определяются как (где <Name> - это имя нашего модального класса):

@Repository
public interface <Name>Repository implements JpaRepository<Name, Long> {
    // …
}

Мы вносим их в наш beans с помощью аннотации @Inject из javax:

@Inject
public void set<Name>Repository(<Name>Repository <name>Repo) {
    this.<name>Repo = <name>Repo;
}

private <Name>Repository <name>Repo;

Проблема заключается в том, что IntelliJ подчеркивает <name>Repo в функции set<Name>Repository как ошибку с текстом:

Не удалось автоподтвердить. Существует более одного типа bean типа "Репозиторий". Beans: Repo, Repo.

Это только проблема с проверкой. Компиляция и запуск нашего приложения прекрасно работает, но в попытке сделать проверки в IJ полезными, это большая проблема. У кого-нибудь есть предложения о том, как заставить IntelliJ вести себя?

Для справки, мы используем Hibernate в качестве нашего поставщика JPA, а источник данных настроен как в окнах инструментов Database and Persistence.

Ответы

Ответ 1

У меня тоже такая же проблема. Я просто прокомментировал аннотацию @Repository в своих репозиториях данных Spring Data JPA, и все работает отлично, и IntelliJ IDEA также счастлив!

Ответ 2

Оказывается, у меня было два контекста, которые дважды собирали одни и те же классы в моем spring applicationContext.xml:

<mongo:repositories base-package="com.example.persistence.repositories.*"/>
...
<context:component-scan base-package="com.example.persistence.repositories.*"/>

Удаление одной из этих строк устранило проблему.