Redundant declaration: @SpringBootApplication already applies given @ComponentScan

报错翻译: 冗余声明:@SpringBootApplication已应用于给定的@ComponentScan
这是我在给微服务配置feign负载平衡的时候,我要在(feign模块)配置去扫描(api模块)下的包,然后出现下面的bug @ComponentScan的注解报红

Redundant declaration: @SpringBootApplication already applies given @ComponentScan_第1张图片

那我们来说一说为什么会报红呢?

已知@ComponentScan会默认扫描当前包

我要扫描的另一个模块包下的service的包 (api模块)
Redundant declaration: @SpringBootApplication already applies given @ComponentScan_第2张图片

我当前模块的包 (feign模块)

Redundant declaration: @SpringBootApplication already applies given @ComponentScan_第3张图片

因为我的配置是@ComponentScan(“com.xin”),然后当前模块和我想要扫描的包都有com.xin,再加上@ComponentScan默认扫描当前包,所以这就会报你的注解是冗余的

解决方法

你只需要把你想要扫描的另外的包,写的详细一点,或者改一个名字就ok了
①把你要扫描的包写的更详细一点
Redundant declaration: @SpringBootApplication already applies given @ComponentScan_第4张图片

②把你要导入的包改一个名字

Redundant declaration: @SpringBootApplication already applies given @ComponentScan_第5张图片
我直接把api模块的包名改了,这样就不和feign模块的包名冲突了,解决。

不过我又试了试,现在微服务集成feign不需要@ComponentScan也是可以的,你要去掉@ComponentScan是可以正常访问的,那就不需要,如果不可以正常访问,那就只能按上面的配置

你可能感兴趣的:(spring,java,后端,微服务,spring,cloud)