我有一个Spring启动应用程序。我用@Component注释了项目的一个类。现在在我的主类中,当我试图获取该类的bean时,我得到一个异常,它无法找到该bean。
Exception in thread "main" [2m2017-05-08 09:53:55.303[0;39m [32m INFO[0;39m [35m9112[0;39m [2m---[0;39m [2m[ Thread-2][0;39m [36ms.c.a.AnnotationConfigApplicationContext[0;39m [2m:[0;39m Closing org.springframework.context.annotation.AnnotationConfigApplicationContext@4df828d7: startup date [Mon May 08 09:53:54 EDT 2017]; root of context hierarchy
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'eventpublisher' available
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:687)
at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1207)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:284)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1081)
at com.fannie.SpringEventGenerationJBsApplication.main(SpringEventGenerationJBsApplication.java:17)
注释为组件的类如下
@Component
public class EventPublisher implements ApplicationEventPublisherAware {
@Autowired
private ApplicationEventPublisher publisher;
public void eventpublishers() {
ActualEvent actualEvent = new ActualEvent(this);
System.out.println(actualEvent);
publisher.publishEvent(actualEvent);
}
@Override
public void setApplicationEventPublisher(ApplicationEventPublisher publisher) {
this.publisher = publisher;
}
}
@SpringBootApplication
@ComponentScan(basePackages = {"com.fannie"})
public class SpringEventGenerationJBsApplication {
public static void main(String[] args) {
ApplicationContext context = SpringApplication.run(SpringEventGenerationJBsApplication.class, args);
EventPublisher ep = (EventPublisher) context.getBean("eventpublisher");
ep.eventpublishers();
}
如本文所述
Spring按照上面的规则为未命名的组件生成bean名称:本质上,取简单的类名,并将其初始字符转换为小写
因此,当具有通过组件扫描检测到的类EventPublisher
时,生成的bean名称将是eventPublisher
。
2020-09-23T15:28:00.3483912Zjava.lang.IllegalStateExcture:未能加载Application ationContext 2020-09-23T15:28:00.3489821Z引起的原因:org.springframework.beans.factory.不满意依赖异常:创建在文件[/home/run/work/comation-service
我正在做项目的Spring启动...但是得到了这个错误,而运行应用程序。这可能是H2数据库错误。但是要解决这个错误localhost应该运行,但程序在部署前终止...所以我不能看到什么是实际问题。 错误:org.springframework.beans.factory.BeanCreationException:创建名称为'project TaskRepository'的bean时出错com.a
我得到以下错误消息,而运行我的项目 组织。springframework。豆。工厂UnsatisfiedPendencyException:创建名为“TipoeStatDoCivilController”的bean时出错:通过字段“TipoeStatDoCivilService”表示的未满足的依赖关系;嵌套的异常是org。springframework。豆。工厂UnsatisfiedPendenc
我在构建时遇到了这个错误。我在这里参考了其他的答案,但没有一个对我有效。 应用程序.属性 存储库: 实体: 和pom.xml 和主类(spring boot应用程序) 我从.m2目录中删除了所有文件夹。再次运行mvn clean install。得到了同样的错误。服务类自动连接存储库。控制器使用@RestController注释。 而这正是确切的原因: 原因:org.springframework
我正在使用带有Boot的Spring Batch并使用XML配置来配置批处理作业。但是批处理作业是使用Tivoli调度的。同样,我希望通过使用批处理启动器进行配置来在本地运行。 我们怎样才能满足依赖性? 当我配置JobLauncher时 Database aseConfig.java XML配置:
我正在尝试开发一个新的批与Spring批和jpa。当我尝试启动它时,我收到错误"嵌套异常是org.springframework.beans.factory.NoSuchBean定义异常:没有名为'entityManagerFactory'可用的bean" 我的pom.xml 我的数据源配置类: 我的存储库类: 我的实体类: pplication.properties: 如果我尝试启动应用程序,我