本来是想通过 @ConditionalOnProperty
来实现这个功能的,但是发现不起作用。
public class SampleTask {
@Scheduled(cron = "${task.sample.disable.cron:0 0/10 * * * ?}")
@ConditionalOnProperty(name = "task.sample.disable.enable", havingValue = "true", matchIfMissing = true)
public void disableSample() {
log.info("disable sample task");
}
}
根据 StackOverflow 上的回答,可以通过将 cron 表达式配置为 -
来禁用定时任务。
public class SampleTask {
@Scheduled(cron = "${task.sample.disable.cron:-}")
public void disableSample() {
log.info("disable sample task");
}
}
在配置文件中配置 cron 表达式:
task:
sample:
disable:
cron: "-"
版权声明:本文为博主「佳佳」的原创文章,遵循 CC 4.0 BY-NC-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:www.liujiajia.me/2021/7/19/d…