@ComponentScan未检测到豆

时间:2018-08-20 11:49:53

标签: java spring spring-boot annotations

我具有以下多项目结构:

-ParentProject
   -project1
     -src
       -package1
           -package1.1
           -package1.2
        Scan.java
        Main.java
   -src
       -package2
           -package2.1
           -package2.2

在Scan.java中,我具有以下代码片段:

      final ActionForSimulatorComponent annotation = AnnotationUtils.findAnnotation(bean.getClass(), ActionForSimulatorComponent.class);

有效地,我想做的是找到所有带有@ActionForSimulatorComponent批注的bean。但是我只找到package1中存在的bean,而不是package2中存在的bean。足够公平,因此我在Main.java中尝试了以下操作:

@SpringBootApplication
@ComponentScan(value = {"package1", "package2"}, nameGenerator = FullClassBeanNameGenerator.class)
public class Main extends Scan

那只返回package1的bean,但是没有返回package2的bean。我怀疑我的项目结构错误,我知道我需要将主类放入父包中,然后所有内容都将向下扫描而不会出现问题。但是发生的是,我有两个不同的项目,并将project1作为源树包含在parentProject中。

Spring是否有可能使用这种结构?如果是这样,我在做什么错?

我可以在拥有Main类的子项目的父项目中扫描bean吗?

0 个答案:

没有答案