在Spring Batch 4.1上启动作业时会重新启动sprint引导应用程序

时间:2019-04-22 15:26:02

标签: spring-batch

我正在使用Spring Batch启动Spring Boot应用程序,但是启动Spring Batch作业时Spring Boot应用程序总是重新启动。

弹簧靴2.1.3 春季批次4.1.1

    @Bean
    public FlatFileItemWriter<Person> writer(){

        return new FlatFileItemWriterBuilder<Person>()
                .name("personItemWriter")
                .resource(new ClassPathResource("result-data.csv"))
                .delimited()
                .delimiter(",")
                .names(new String[]{"firstName", "lastName"})
                .build();
    }

    @Bean
    public Job importUserJob(JobCompletionNotificationListener listener, @Qualifier("step1") Step step1) {
        return jobBuilderFactory.get("importUserJob")
                .listener(listener)
                .flow(step1)
                .end()
                .build();
    }

    @Bean
    public Step step1(PersonItemProcessor processor, FlatFileItemWriter<Person> writer){

        return stepBuilderFactory.get("step1")
                .<Person, Person>chunk(10)
                .reader(reader())
                .processor(processor1())
                .writer(writer)
                .allowStartIfComplete(true)
                .build();

    }

我希望Spring Boot应用程序不会重新启动

1 个答案:

答案 0 :(得分:0)

您可以指定此属性,以使其在春季启动时不会自动启动批处理。

spring.batch.job.enabled = false