升级springboot项目到2.5.8版本,出现异常:
Caused by: org.quartz.SchedulerConfigException: DataSource name not set.
at org.quartz.impl.jdbcjobstore.JobStoreSupport.initialize(JobStoreSupport.java:643) ~[quartz-2.3.2.jar:na]
at org.quartz.impl.jdbcjobstore.JobStoreTX.initialize(JobStoreTX.java:57) ~[quartz-2.3.2.jar:na]
at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1368) ~[quartz-2.3.2.jar:na]
at org.quartz.impl.StdSchedulerFactory.getScheduler(StdSchedulerFactory.java:1579) ~[quartz-2.3.2.jar:na]
at org.springframework.scheduling.quartz.SchedulerFactoryBean.createScheduler(SchedulerFactoryBean.java:679) ~[spring-context-support-5.3.14.jar:5.3.14]
at org.springframework.scheduling.quartz.SchedulerFactoryBean.prepareScheduler(SchedulerFactoryBean.java:616) ~[spring-context-support-5.3.14.jar:5.3.14]
at org.springframework.scheduling.quartz.SchedulerFactoryBean.afterPropertiesSet(SchedulerFactoryBean.java:504) ~[spring-context-support-5.3.14.jar:5.3.14]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.14.jar:5.3.14]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.14.jar:5.3.14]
... 32 common frames omitted
spring-boot-starter-quartz 2.5.9 之前使用org.quartz.impl.jdbcjobstore.JobStoreTX定义quartz的默认数据源支持,即如下配置:
org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
修改为:
org.quartz.jobStore.class=org.springframework.scheduling.quartz.LocalDataSourceJobStore
整理于: https://blog.csdn.net/weixin_42458219/article/details/122247162