Spring 声明@ComponentScan for library包时未侦听ApplicationReadyEvent

Spring 声明@ComponentScan for library包时未侦听ApplicationReadyEvent,spring,spring-boot,Spring,Spring Boot,这里,如果我删除@componentscan({“com.test.cloud”})注释,则会触发testMethod。但是当我使用@componentscan({“com.test.cloud”})时,testMethod不会被触发 SpringBoot版本:1.5.10。通过添加以下内容,发布了: @componentscan({“com.test.cloud”、“com.example.demo”})您的项目结构是什么?TestClass驻留在哪个包中?TestClass和TestClas

这里,如果我删除@componentscan({“com.test.cloud”})注释,则会触发testMethod。但是当我使用@componentscan({“com.test.cloud”})时,testMethod不会被触发

SpringBoot版本:1.5.10。通过添加以下内容,发布了


@componentscan({“com.test.cloud”、“com.example.demo”})

您的项目结构是什么?
TestClass
驻留在哪个包中?TestClass和TestClass2驻留在同一个基本包中。例如com.example.demo,但com.test.cloud是由依赖项添加的外部库。
@ComponentScan
覆盖了另一个包,您需要将两个包都添加到扫描中,或者定义一个顶级包,如
com.test
。因此您应该有类似于
@ComponentScan({“com.test.cloud”,“com.example.demo”)的东西
谢谢。。它起作用了
@componentscan({"com.test.cloud"})
@SpringBootApplication
public class TestClass {

public static void main(String[] args) {
    ApplicationContext context = SpringApplication.run(TestClass.class, args);
}
}

public class TestClass2{

@eventlistener(ApplicationReadyEvent.class)
public void testMethod() {
.....
.....
}
}