【问题标题】:Inject bean from a different folder从不同的文件夹注入 bean
【发布时间】:2020-08-19 07:33:59
【问题描述】:

我的项目结构如下:

在我的 Groovy 文件夹中包含一个标有 @Component 的类,我想将它注入到 java 文件夹中的另一个类中。但是spring找不到要注入的bean,当我将标有@Component的类移动到java文件夹时它工作正常。如何让 spring 知道 groovy 文件夹?

【问题讨论】:

  • Spring 已经知道您的文件夹,因为它是类路径的一部分。如果找不到,则说明您的类路径设置有问题。它在启动时是否真的失败了,或者您的 IDE 是否在抱怨(我会说后者)。
  • 实际上是 spring 抱怨找不到注入它的 bean。但是,当我在 groovy 文件夹中使用与 java 文件夹完全相同的包名时,spring 会扫描该包中的 bean 并找到我的类
  • 但那是你没有告诉我们的事情。

标签: java spring spring-boot spring-bean


【解决方案1】:

您可以在 Spring 应用程序中使用 @ComponentScan(使用 @SpringBootApplication 注释)来扫描其他包中的组件。

@ComponentScan(basePackages = "com.stackoverflow.other.package")

https://www.baeldung.com/spring-component-scanning

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多