根据您分享的代码,您似乎使用的是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();
}
}
相同的图案也可用于步骤。
JobRepository 也未检测到 v5