即使添加了注释,Spring Batch 应用程序也未检测到 Bean

问题描述 投票:0回答:2

我相信我已经正确使用了注释@EnableBatchProcessing和@Autowire,但我无法解决该错误。包结构正确。

enter image description here enter image description here

我本来希望解决这个问题,但我没有

annotations spring-batch
2个回答
1
投票

根据您分享的代码,您似乎使用的是Spring Batch v5.0.0。在此版本中,

JobBuilderFactory
StepBuilderFactory
不再由
@EnableBatchProcessing
在应用程序上下文中注册为bean。 @EnableBatchProcessing的Javadoc中提到了这一点。也没有注册
JobBuilder
StepBuilder
bean,因此您无法像在代码中共享的那样在配置类中自动装配此类 bean。

v5定义你的工作的方式如下:

@Configuration
@EnableBatchProcessing
public class MyJobConfig {
 
   @Bean
   public Job job(JobRepository jobRepository) {
        return new JobBuilder("myJob", jobRepository)
               // define job flow as needed
               .build();
    }
 
}

相同的图案也可用于步骤。


0
投票

JobRepository 也未检测到 v5

© www.soinside.com 2019 - 2024. All rights reserved.