SpringBoot Component多模块项目的扫描问题
我有一个myapp父pom类型的maven项目,其中包含myapp-core和myapp-web模块。myapp-core模块作为依赖项添加到myapp-web中。
myapp-core 模块中的所有类都驻留在 root package com.myapp.core 中,myapp-web 模块中的所有类都驻留在 root package com.myapp.web 中
主要的 Application.java 也位于 com.myapp.web 包中。由于我的核心模块根包不同,我为Consentscan包含了通用的基础包“com.myapp”,如下所示:
@Configuration
@ComponentScan(basePackages="com.myapp")
@EnableAutoConfiguration
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
现在令人惊讶的是,如果我使用运行方式->Spring Boot应用程序运行此应用程序,它工作正常。但是,如果我以运行方式运行>Java应用程序,它会失败并出现错误,说它找不到myapp-core模块中定义的bean。
如果我移动到包装,它工作正常。即使我也将其作为Java应用程序运行,它也应该工作,对吧?Application.java
com.myapp