当前位置: 首页 > 知识库问答 >
问题:

找不到com . example . demo . config . batch launche中的字段jobLauncher

桂飞翼
2023-03-14

com.example.demo.config中的字段jobLauncher。BatchLauncher需要类型为“org.springframework.batch.core.launch”的bean。找不到JobLauncher。

注入点有以下注释:-@ org . spring framework . beans . factory . annotation . auto wired(required = true)

行动:

考虑定义“org.springframework.batch.core.launch”类型的bean。配置中的JobLauncher。

@Component
public class BatchLauncher {
    
    @Autowired
    private JobLauncher jobLauncher;
    
    @Autowired
    private Job job;

    public BatchStatus run() throws JobParametersInvalidException, JobExecutionAlreadyRunningException,
            JobRestartException, JobInstanceAlreadyCompleteException {
        JobParameters parameters = new JobParametersBuilder().addLong("time", System.currentTimeMillis())
                .toJobParameters();
        JobExecution jobExecution = jobLauncher.run(job, parameters);
        return jobExecution.getStatus();
    }
}

共有1个答案

胡桐
2023-03-14

你有很多方法来解决它,所有这些都是解决在SpringIOC容器中已经检测到的JobLuncher,因为异常说IOC找不到JobLuncher类的bean来注入BatchLuncher类,简单地使用@Autowired根本不足够,实际上你告诉IOC将提供JobLuncher类的实例,但在编译时他找不到要注入的实例。所以你需要提供它的一个实例。

    < li >将< code>@Service或< code>@Component批注添加到JobLuncher的实现中。 < li >将JobLuncher类的实例注入到某个由@Config注释的自定义类中,并由@Bean注释JobLuncher的方法注入器,以供IOC扫描。
    @Configuration
    public class JobLuncherConfig {
        @Bean
        public JobLuncher jobLuncher() {
        //return an implementation or concrete class of JobLuncher class-interface
          return new JobLuncher(...);
        }
    }

事实上还有很多其他的方法,更多的我建议对Spring容器和控制反转有更深入的了解,你可以从这里开始。

 类似资料:
  • 我有一个用于使用elasticsearch GeopointSpring引导应用程序。当我保存弹性索引并创建geoDistanceQuery时,我得到了QueryShardException[未能找到geo_point字段[customer]]异常。 我的文件; 储存库; 保存和获取方法;

  • 我是一名spring boot学习者,所以我一直在尝试创建一些基本的spring boot应用程序。我试图运行开发的应用程序时出错。 我的错误是[[https://i.stack.imgur.com/oyQDi.png][1]][1] java: ItemDetails.java:[软件包名称:io.ajithan.springbootstarter.model] ItemResponse.jav

  • 结构没有问题。spring boot可以扫描UserMapper,但不能扫描UserService。我试着给我的UserService@Mapper组件,然后它就可以被扫描了。但我不知道如何使用其他方法进行扫描。我尝试了@服务,但不起作用。

  • 如果发现某些文档不包含排序条件中使用的字段,Elasticsearch在分析查询时抛出。 SearchParseException:解析失败[找不到[价格]的映射以便对其进行排序] 如何成功搜索这些文档,即使有些文档缺少字段?

  • 我是Spring新来的,所以我有一个这样的问题:描述: 字段templateEngine在com.diet4you。拉普科·叶卡捷琳娜。MailComponent需要找不到类型org.thymeleaf.TemplateEngine的bean。 注入点具有以下注释:-@org。springframework。豆。工厂注释。自动连线(必需=真) 已找到以下候选项,但无法注入:-“ThymeleafA

  • 我是spring boot的新手,一直在尝试制作简单的REST web应用程序。我遵循了不同指南中所示的步骤,但当我尝试运行应用程序时,仍然会遇到同样的问题。 这是我每次尝试运行代码时看到的输出 项目类别: