Я разработал пару Spring Batch
заданий в Spring Boot
веб-приложении. Для упрощения обслуживания я использовал @EnableBatchProcessing(modular = true)
следующим образом:
@Configuration
@EnableBatchProcessing(modular = true)
public class BatchConfiguration {
@Bean
@ConditionalOnProperty(value="first.batch.enabled", havingValue = "true")
public ApplicationContextFactory firstJobs() {
return new GenericApplicationContextFactory(FirstModule.class);
}
@Bean
@ConditionalOnProperty(value="second.batch.enabled", havingValue = "true")
public ApplicationContextFactory secondJobs() {
return new GenericApplicationContextFactory(SecondModule.class);
}
...
}
и у меня есть @Configuration
классы, по одному на каждый Job
, определенные соответственно в базовых каталогах модулей. Все работает нормально, но теперь я хочу настроить Spring Cloud Dataflow
UI, чтобы иметь базовый c мониторинг моего Jobs
.
Проблема в том, когда я пытаюсь добавить аннотацию @EnableTask
к этому классу BatchConfiguration
, Spring
не связывает выполнение задания с выполнением задачи. Это работает, только когда я запускаю тесты (@SpringBatchTest
).
Я также попытался добавить аннотацию @EnableTask
к классу FirstJobConfiguration
, а также добавить ее к BatchConfiguration
и First|JobConfiguration
, но безрезультатно. Я также просмотрел официальную документацию, но ничего не нашел.
Можно ли использовать Spring Cloud Task
с модульным Spring Batch
?
Спасибо.