Spring-boot调度程序在没有@EnableScheduling批注的情况下运行

我按照这个例子在示例项目中创建了一个计划任务:https://spring.io/guides/gs/scheduling-tasks

它说,@ EnableScheduling确保创建后台任务执行程序.没有它,没有任何安排.

但是,我错误地没有使用它.怎么还能运作?

的pom.xml

其他课程:

@SpringBootApplication
public class DemoApplication {

public static void main(String[] args) {
   SpringApplication.run(DemoApplication.class,args);
  }
 }

@Component
public class ScheduledTaskRunner {

    Logger log = LoggerFactory.getLogger(ScheduledTaskRunner.class);

    @Scheduled(cron = "0/1 * * * * *")
    public void run(){
        log.info("Hello");
    }
}

是不是计划的任务不应该运行?

最佳答案
你的代码添加了spring-boot-starter-actuator,当添加了一个调度程序时.执行器使用该调度程序来安排度量的自动导出.

这个代码在MetricExportAutoConfiguration中,并已添加到Spring Boot 1.3.0中.

因此,如果你删除执行器调度将不再工作.

相关文章

这篇文章主要介绍了spring的事务传播属性REQUIRED_NESTED的原...
今天小编给大家分享的是一文解析spring中事务的传播机制,相...
这篇文章主要介绍了SpringCloudAlibaba和SpringCloud有什么区...
本篇文章和大家了解一下SpringCloud整合XXL-Job的几个步骤。...
本篇文章和大家了解一下Spring延迟初始化会遇到什么问题。有...
这篇文章主要介绍了怎么使用Spring提供的不同缓存注解实现缓...