- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在向现有 SpringBoot 应用程序添加一些新组件,但在启动应用程序时遇到 bean 定义异常。
所有bean/服务和其他组件都是通过注释来配置的,而不是通过spring xml配置(我更熟悉基于xml的spring配置)。不幸的是,为了解释我的问题,我必须在下面稍微混淆一下,而不是提供真实的代码。
在应用程序中,我添加了一个新的工厂组件,将其命名为 FooSheetFactory:
package some.package;
@Component
public class FooSheetFactory {
private final List<FooSheet> fooSheetList;
@autowired
public FooSheetFactory(List<FooSheet> fooSheetList) {
this. fooSheetList = fooSheetList;
}
.
.
(other stuff)
.
}
此类使用名为 FooSheet 的组件:
package some.package;
@Component
public interface FooSheet {
public Foo getFoo(int param1, String param2);
}
工厂在应用程序的其他地方实例化,方式如下:
.
.
@Autowire
FooSheetFactory fsf;
.
.
启动SpringBoot应用程序时,出现以下错误:
Error creating bean with name "FooSheetFactory " defined
in file [ ~path/target/classes/..../FooSheetFactory.class]: Unsatisfied dependency
expressed through constructor parameter 0; nested exception
is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of
type 'java.util.List<some.package.FooSheet>' available. Expected at least 1 bean which
qualifies as autowire candidate. Dependency annotations: {}
从表面上看,这个实例化对我来说类似于我们在应用程序的其他地方使用 spring 的方式。类和接口(interface)都在同一个包中,并且该包中使用类似注释的其他类在启动时不会抛出错误。如果您能了解我的问题可能是什么,我将不胜感激。谢谢。
最佳答案
不要将@Component
注解放在接口(interface)上,而是放在实现类上。您的异常是提示它找不到您的接口(interface)的任何实现。你应该有:
@Component
class FooSheetImpl implements FooSheet {
...
}
关于java - 启动SpringBoot应用时出现No Qualifying Bean(NoSuchBeanDefinitionException)Available错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57420832/
我正在获取 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'spring
我创建了一个库,用于在多个 Spring Boot 应用程序上共享代码。 该库包含一个 Repository 类 RequestRepository。将库添加到 Spring Boot 项目后,编译并
所以我尝试使用在另一个类中生成的 bean 以在主应用程序中使用 package com.simon.spring.basics.properties; import org.spri
我使用 spring-data-jpa。没有 Spring Boot。 package ru.spb.repository; public interface CrudUserRepository e
我尝试使用ClassPathXmlApplicationContext获取bean。但我收到:NoSuchBeanDefinitionException:未定义名为“newsController”的
请解释以下有关 Spring 中 NoSuchBeanDefinitionException 异常的信息: 是什么意思? 什么情况下会抛出? 我该如何预防? 这篇文章旨在对使用 Spring 的应用程
我刚刚使用 Spring Boot V1.3.5 设置了一个新项目,在尝试将存储库 Autowiring 到服务中时,我不断收到 NoSuchBeanDefinitionException 异常。这很
我在 Spring mvc 中遇到错误: (org.springframework.beans.factory.BeanCreationException:创建名称为“webController”的b
我正在使用 spring mvc 开发 Web 应用程序。我想将 spring bean 注入(inject)到我的 Servlet Filter 中。 我引用了这个教程http://www.dead
我们有一个(非 Web 应用程序)Spring 应用程序,在我们的 CruiseControl 持续集成 Linux 盒子上运行测试时会抛出 NoSuchBeanDefinitionException
我想在 BookRestController 中测试我的休息端点。我使用 @WebMvcTest 编写了一个测试。 @RunWith(SpringRunner.class) @WebMvcTest(B
我正在尝试按照官方教程开发我的第一个 Spring MVC 应用程序。我从模板创建了 MVC 项目,然后添加了以下 Spring Security 配置。 pom.xml: ... ...
我正在尝试使用 @RestClientTest 来测试休息客户端类。 据说: It will apply only configuration relevant to rest client test
我想使用ElasticSearch和Spring Data。我添加了此依赖项: org.springframework.boot spring-boot-starter-data-e
当我运行"grails dbm-update --dataSource=production"时,出现以下异常: org.springframework.beans.factory.NoSuchBea
我有一个 Java 桌面应用程序,它通过 Hibernate 连接到 MySql 数据库。 我有以下配置文件: pom.xml,我在其中放置了一些内容和数据库配置文件 [app_name]_conte
我有一个使用 Quartz 调度程序的 Spring Boot (2.1.3) 项目。它是通过启动器包含的: dependencies { ... implementation('or
我正在从事 Spring Hibernate 项目。如果我没有将 bean 名称与 @Repository 或 @Component 一起提及,我会收到错误“NoSuchBeanDefinitionE
我的多模块项目结构如下: project-example (parent) -- project-example-domain: contains DAOs and Services -- proje
我有一个 Spring Boot 应用程序。当我调用 context.getBean(MyController.class) 时,它工作正常。当我调用 context.getBean("MyContr
我是一名优秀的程序员,十分优秀!