解决SpringBoot引用别的模块无法注入的问题

Posted 花伤情犹在

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决SpringBoot引用别的模块无法注入的问题相关的知识,希望对你有一定的参考价值。

问题描述

在使用 Maven 多模块开发的时候,A模块引入B模块,却无法注入B模块中被@Service@Mapper@Compoment@Configuration 等,只要是你能想到能将类放置在Spring容器中的注解,都是无法在A模块中注入进来。


父工程

<modules>
	<module>blog</module>
	<module>admin</module>
	<module>framework</module>
</modules>

目录结构


Blog模块 引入 framework模块

<dependencies>
	<dependency>
		<groupId>com.hsqyz</groupId>
		<artifactId>framework</artifactId>
		<version>1.0-SNAPSHOT</version>
	</dependency>
</dependencies>

但是Blog项目启动之后就是无法扫描到framework模块的Bean…

解决方案一

确保两个模块的启动类包路径一致性:

blog模块包路径:com.hsqyz

framework模块包路径:com.hsqyz

解决方案二

利用@SpringBootApplicationscanBasePackages 属性指定包的扫描路径

@SpringBootApplication(scanBasePackages = "com.hsqyz.blog","com.hsqyz.framework")

或者使用@ComponentScanvalue属性指定包的扫描路径

@ComponentScan(value = "com.hsqyz.blog","com.hsqyz.framework")

以上是关于解决SpringBoot引用别的模块无法注入的问题的主要内容,如果未能解决你的问题,请参考以下文章

解决SpringBoot引用别的模块无法注入的问题

SpringBoot使用@ServerEndpoint无法依赖注入问题解决 SpringBoot webSocket配置

SpringBoot 中 Mapper无法注入的问题

SpringBoot中普通类无法注入service的解决方案

Springboot 定时任务,service层无法注入问题详细解决

SpringBoot使用@ServerEndpoint无法依赖注入问题解决(WebSocket)