随着springboot的广泛应用以及公司业务的拓展,为了降低项目间的耦合度,方便我们的开发测试,我们通用将业务按模块分开部署。如商城系统中,将支付、订单、用户、商品分为4个模块。
而在分模块部署中,我们可能会遇到这样的问题,启动类扫描不到其他模块的自定义配置类,导致项目启动报错。今天围绕这个问题,我们提供几种解决办法。
方法一:手动导入配置类
最简单粗暴的方法,就是在启动类上,采用@ Import注解,将自定义的配置类导入进来
@SuppressWarnings("SpringComponentScan") // 忽略 IDEA 无法识别 ${hs.info.base-package}
@SpringBootApplication(scanBasePackages = {"${hs.info.base-package}.server", "${hs.info.base-package}.module"})
@Import(HsMybatisAutoConfiguration.class)
public class HsServerApplication {
public static void main(String[] args) {
SpringApplication.run(HsServerApplication.class, args);
}
}
方法二:在对应模块的resources目录下,加入配置文件
针对这种情况,springboot也为我们考虑到了,所以,我们只需要在 resources加上配置文件即可
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.hs.framework.mybatis.config.HsMybatisAutoConfiguration
方法三:定义一个imports后缀的文件,放置对应模块的resources目录下
文件名称:org.springframework.boot.autoconfigure.AutoConfiguration
文件内容,对应配置类的具体路径
com.hs.framework.mybatis.config.HsMybatisAutoConfiguration
今天这篇文章的内容到此就成功结束,感谢大家的阅读!
我是写代码的小和尚,平时喜欢写写博客,如果我的文章对您有所帮助,麻烦点赞收藏一下吧!让更多的人看见,谢谢大家!