springboot的Scheduled定时器不工作
Posted Mister_W
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot的Scheduled定时器不工作相关的知识,希望对你有一定的参考价值。
问题情况
使用springboot,使用注解方式启动定时器进行业务调度。
在入口类中加了注解如下:
package org.test.xyz; @SpringBootApplication @EnableScheduling @ComponentScan(basePackages = {"org.test.abc"}) public class Test { public static void main(String[] args) { SpringApplication.run(Test.class, args); } }
定时器类如下:
package org.test.xyz; @Component public class Timer { @Scheduled(fixedRate = 5000) public void test() { System.out.println("Time " + new Date().toString()); } }
springboot启动后,并没有按照预期结果打印:Time xxx 的日志。
分析结果
因为在入口类中使用了@ComponentScan注解,并且指定了basePackages,所以程序只会扫描指定的包路径下的Component类,其他位置的Component类不会进行扫描,从而不会启动定时器。
参考链接:https://blog.csdn.net/u014695188/article/details/52263903
以上是关于springboot的Scheduled定时器不工作的主要内容,如果未能解决你的问题,请参考以下文章
springboot 基于@Scheduled注解 实现定时任务