Я просто хочу периодически запускать метод основной загрузки с помощью аннотации @scheduler.Я указал некоторый дополнительный код, который выполнит некоторые предварительные действия, прежде чем он включит службы REST.
@EnableScheduling
@SpringBootApplication
public class SpringBootJDBCApp {
@Autowired
ITest testService;
public static void main(String args[]) throws Exception {
PersistenceValidation.cloneGit();
PersistenceValidation.dataPersistance();
PersistenceValidation.cleanUp();
ApplicationContext context = SpringApplication
.run(SpringBootJDBCApp.class);
ITest testService = context.getBean(ITestService.class);
testService.getAllData();
}
}
Я хочу запускать описанный выше основной метод каждые 10 секунд один раз.и добавлена аннотация @Schedule для основного метода.Но он выдает исключение:
Ожидаемое поведение в соответствии с документом @Scheduler следует называть методом без аргументов []
Я хочу использовать @Scheduler
примечание в основном методе, как показано ниже:
@Scheduled(initialDelay = 1000, fixedRate = 10000)
public static void main(String args[]) throws Exception {
PersistenceValidation.cloneGit();
PersistenceValidation.dataPersistance();
PersistenceValidation.cleanUp();
ApplicationContext context = SpringApplication.run(SpringBootJDBCApp.class);
ITest testService = context.getBean(ITestService.class);
testService.getAllData();
}
Ошибка :
org.springframework.beans.factory.BeanCreationException: Ошибка при создании компонента с именем 'springBootJDBCApp': Инициализация компонента не удалась;Вложенное исключение - java.lang.IllegalStateException: Обнаружен недопустимый метод @Scheduled 'main': с помощью @ Scheduled
можно аннотировать только методы без аргументов * Есть ли другой способ выполнить эту задачу?Я хочу запускать все вещи, которые периодически упоминаются в основном методе.
Есть ли отведения?