当前位置: 首页 > 知识库问答 >
问题:

无法自动连接。找不到`Repository'类型的beans[重复]

罗智志
2023-03-14

我使用的是Spring Data Jpa,这是我的项目结构:

App
  ConfigPackage
    MyConfig
  ServicePackage
    MyService
  RepositoryPackage
    MyRepository

下面是myRepository:

public interface MyRepository extends JpaRepository<MyEntity, Long> {
}

以下是MyService:

@Service
public class MyService {

    @Autowired
    private MyRepository myRepository; <---here

    ...
}
@Configuration
@EnableJpaRepositories(
        basePackages = "RepositoryPackage",
        entityManagerFactoryRef = "xxx",
        transactionManagerRef = "xxx"
)
public class MyConfig {
}

我使用@autowiredMyRepository注入到MyService,但IntelliJ总是抱怨

无法自动连接。找不到“MyRepository”类型的bean

即使代码能够成功编译并运行。

为什么IntelliJ不能识别这不是一个错误?如何解除Intellij的警告?

IntelliJ版本:2018.2.6

共有1个答案

上官正志
2023-03-14

注意:这是针对IntelliJ IDEA 2018.3.3终极版的(但也适用于其他版本)

我注意到,当配置使用@componentscan并因此加载另一个用@configuration注释的类时,就会出现这种错误(至少在我的项目中是这样)。IntelliJ似乎没有完全识别它,从而导致错误/警告:

  1. 单击顶部文件夹上的文件结构
  2. 按F4
  3. 转到“模块”
  4. 从列表中选择IntelliJ投诉的模块
  5. 单击“Spring”
  6. 单击加号图标
  7. 选择提供XRepository
  8. 的配置
  9. 保存
 类似资料: