我正在尝试将 Spring 4.xx 迁移到 Spring boot,它依赖于外部 spring 2.5 jar 中的一个类。我已经进行了所有自动装配更改,下面是我的应用程序类
@SpringBootApplication
@EnableAutoConfiguration
@ComponentScan(basePackages = { "com.xyz" })
public class MainApiApplication {
public static void main(String[] args) {
SpringApplication.run(MainApiApplication.class, args);
}
}
外部 jar 中的依赖类存在于 com.xyz.abc 包下,因此我将主应用程序类放在 com.xyz 包下,并在同一包下添加了组件扫描
这是我的组件类,具有自动装配的依赖项
@Component
public class ComponentClassA {
@Autowired
private ComponentClassB currencyService;
}
@Component
public class ComponentClassB {
@Autowired
private DependentClass depClass;
}
DependentClass 是我在本地附加并构建的外部依赖 jar 中存在的类
在构建应用程序时,所有文件的编译都很好,并且构建成功。但是当我启动应用程序时,出现以下错误
Field DependentClass in com.xyz.ComponentClassB required a bean of type 'com.xyz.common.util.DependentClass' that could not be found.
我不明白为什么找不到来自外部 jar 的类,因为我已经为包添加了组件扫描
DependentClass 的定义如下
public class DependentClass extends ResourceClass<Map<String, Double>> {
// Methods and logic
}
是因为 DependentClass 正在扩展一个类吗?有人可以帮我找出错误的原因吗?