我正在尝试将Spring 4. x. x迁移到Spring启动,它依赖于外部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包下,并在同一个包下添加了组件scan
下面是我的组件类,带有自动连线的依赖项
@Component
public class ComponentClassA {
@Autowired
private ComponentClassB currencyService;
}
@Component
public class ComponentClassB {
@Autowired
private DependentClass depClass;
}
依赖类是存在于我本地附加和构建的外部依赖 jar 中的类
构建应用程序时,所有文件的html" target="_blank">编译都很好,构建成功生成。但是当我启动应用程序时,我收到以下错误
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
}
是因为依赖类正在扩展一个类吗?有人可以帮助我找出错误的原因吗?
在您当前的Spring上下文中没有定义DependentClass。DependentClass没有用bean (@Bean)进行注释。因此会发生nosuchbeandidefinitionexception。
@Bean
public class DependentClass extends ResourceClass<Map<String, Double>> {
// Methods and logic
}
按如下方式定义您的类:-
@Component("depClass")
public class DependentClass extends ResourceClass<Map<String, Double>> {
// Methods and logic
}
如果此包位于 ScanBasePackages 中,并且组件注释中的 depClass 定义了 Bean 的名称,则组件将其注册到上下文定义中。
您也可以通过以下方式调用:-
@Autowired
@Qualifier("depClass")
private DependentClass dependentClass;
如果该类在您的外部类中定义,请使用@Bean注释,例如:-
@Bean
public DependentClass depClass(){
return new DependentClass();
}
在自动连线类之后,您最终获得实例。
依赖类
上没有@Component
注释。因此,您需要通过XML或Java配置自己创建依赖类
的bean。
并且没有必要将主类与< code>DependentClass放在同一个包中。
我犯了一个非常愚蠢的错误,但不知道如何解决。 我有一个简单的使用profiles的SpringBoot应用程序,它连接到MongoDb。 我的 pom.xml依赖关系: My StudentController.java 我的StudentService.java 这是我的学生刀。java接口: 我的MongoStudentDaoImpl.java: 我的MongoStudentRepo.java
UnsatisfiedDependencyException:在文件[/home/x/workspace/botshop-backend-java/target/classes/far/botshop/backend/storage/filesystemStorageService.class]中创建名为“file SystemStorageService”的bean时出错:通过构造函数参数0表示
问题内容: 我发现类似的问题解释了许多Web门户。但是我想这是独特的情况。我在Spring MVC应用程序中遇到错误。 代码如下。我认为已经复制了足够的代码。请帮助我了解缺少的内容以及如何解决此问题。任何帮助将是巨大的…!代码:Appitiializer: SQLDEVConfig: SpringAPpContInit: AbstrackJpaConfig: 控制器: CategoryReposi
我在Spring是新来的。我正在使用Spring Boot创建控制台应用程序。应用程序工作正常,但当我尝试测试存储库时,我得到一个错误 < code >原因:org . spring framework . beans . factory . unsatisfieddependencyexception:创建名为“universitymanagerspringbootsapplication”的b
在运行该项目时,我出现了以下错误
我正在使用Spring Boot 2.2.4并尝试自定义执行器 以下是相关的课程