Java SpringBootApplication scanBasePackages未读取子包
我在nexus上发布了一个具有包id的公共库Java SpringBootApplication scanBasePackages未读取子包,java,spring-boot,Java,Spring Boot,我在nexus上发布了一个具有包id的公共库 x.xx.common 它包含常见的外部客户端代理接口的子包 使用此库的项目具有包id x.xx.account x.xx.device 每个项目在根目录中都有自己的应用程序类 x.xx.account.AppClass x.xx.device.AppClass 每个班级都有 @SpringBootApplication(scanBasePackages = {"x.xx"}) 出于某种原因,两个项目都没有在子包下看到任何代理接口 x.xx
x.xx.common
它包含常见的外部客户端代理接口的子包
使用此库的项目具有包id
x.xx.account
x.xx.device
每个项目在根目录中都有自己的应用程序类
x.xx.account.AppClass
x.xx.device.AppClass
每个班级都有
@SpringBootApplication(scanBasePackages = {"x.xx"})
出于某种原因,两个项目都没有在子包下看到任何代理接口
x.xx.common.proxy
x.xx.common.configuration
我尝试将代理接口直接移动到主包下
x.xx.common
但它也失败了
x.xx.common.service.impl.AuditServiceImpl中构造函数的参数0需要找不到类型为“x.xx.common.LogProxy”的bean
对于要扫描的每个接口代理将注释添加到子包类,都会给出该错误。分别向类添加注释,如
@Component
、@Service
或@Repository
。
对于注释:
@SpringBootApplication(scanBasePackages={“x.xx”})
假设子包x.xx
中有一个名为Abc
的类,那么将注释@Component添加到该类中
@组件
Abc类{}
这将有助于阅读子包类
要进一步了解上述注释之间的区别:我已经找到了答案,显然AppClass
@EnableFeignClients
也需要添加基类
因此,对于任何有相同问题的人,myAppClass
现在有以下注释
@SpringBootApplication(scanBasePackages = {"x.xx"})
@EnableFeignClients(basePackages= {"x.xx"})
public class AppClass {
}