【发布时间】:2018-02-26 19:34:19
【问题描述】:
我有 - 或者更确切地说 - 有一个在 IntelliJ 中运行的 Spring 应用程序。它包含几个用@Configuration 注释的类和几个@Component bean。在某些时候,发生了以下情况:
Intelli 开始在代码编辑器中显示错误,指出“无法自动装配。找不到 'xxx' 类型的 bean”。但是有这样的bean用
@Component注释。未达到特定
@Componentbean 的构造函数中的断点。但并非所有@Componentbean 都是如此。在调试模式下运行时,不会到达某些
@Configuration文件中的断点,即使调试器之前在那里停止。如果使用这些@Componentbean 之一自动装配应用程序,它将失败。应用程序启动时没有错误,但显然没有调用
@Configuration类中配置的多个 bean。
包含运行 Spring Boot 应用程序的 main 方法的类标有@SpringBootApplication。 @Component 与此类位于同一包中的类可被识别并且可以自动装配,甚至可以自动装配到其他包中的类中。
我不知道代码或项目中的任何内容会发生变化。
在 File -> Project Settings -> Modules 下,在 Spring Application Context 下现在选择了所有 @Configuration 文件。不过这没什么区别。
也尝试过Build -> Rebuild Project。
类所在的包没有改变。有没有人见过这样的事情?
谢谢
【问题讨论】:
-
在这里查看一些代码示例或包结构会很有用。这可能有助于找出问题所在。在大多数情况下,包裹不会被扫描。有趣的是配置和应用程序类
标签: spring spring-boot intellij-idea