Spring Quartz定时任务失效求助:无法每2分钟打印Hello
问题排查与修复:Spring Quartz定时任务未执行
核心问题分析
- Spring容器未启动:当前
App.java是普通Java主类,执行完打印语句后直接退出,完全没有初始化Spring上下文,导致Quartz的配置、Job和Trigger都未被加载。 - Trigger重复规则错误:
quartz-config.xml中repeatCount设为0,表示仅执行1次,而非预期的无限重复。 - 配置扫描逻辑缺失:未确保Spring能扫描到
QuartzSchedulerConfig配置类,无法加载调度器Bean。
修复步骤与代码调整
1. 改造主类,启动Spring容器
将App.java改为Spring Boot启动类(若使用普通Spring框架,可改用AnnotationConfigApplicationContext手动加载配置):
package com.example; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } }
注:需确保Maven依赖中添加Spring Boot及Quartz相关 starter 依赖
2. 修正Trigger的重复次数配置
修改quartz-config.xml中trigger1的repeatCount属性值为-1(对应SimpleTrigger.REPEAT_INDEFINITELY,表示无限重复):
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <bean id="job1" class="org.springframework.scheduling.quartz.JobDetailFactoryBean"> <property name="jobClass" value="com.example.PracticeApplication" /> <property name="durability" value="true" /> </bean> <bean id="trigger1" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean"> <property name="jobDetail" ref="job1" /> <property name="repeatInterval" value="120000" /><!-- 每2分钟重复 --> <property name="repeatCount" value="-1" /><!-- 无限重复 --> </bean> </beans>
3. 确保配置类被Spring扫描
QuartzSchedulerConfig上的@Configuration注解已正确添加,结合@SpringBootApplication的自动扫描规则(默认扫描主类所在包及子包),该配置类会被自动加载,无需额外调整。
4. 验证依赖完整性
确保Maven的pom.xml中包含Quartz与Spring整合的必要依赖,示例依赖如下:
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-quartz</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> </dependencies>
验证效果
启动改造后的App类,Spring容器会初始化Quartz调度器,触发每2分钟执行一次的定时任务,控制台会每隔2分钟输出Hello。
内容的提问来源于stack exchange,提问作者SRIJAN GIRDHAR
相关产品推荐
相关产品推荐

