1

这是我的quartz.properties:

org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin
org.quartz.plugin.jobInitializer.fileNames = jobs.xml
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.plugin.jobInitializer.scanInterval = 10
org.quartz.plugin.jobInitializer.wrapInUserTransaction = false

jobs.xml 位于我的/WEB-INF/classes文件夹中,与 quartz.properties 文件夹一起。该应用程序被打包为战争。

jobs.xml 文件被正确解析并创建作业:

13:49:30,158 INFO  [org.quartz.impl.StdSchedulerFactory] (MSC service thread 1-8) Quartz scheduler version: 2.2.1
13:49:30,172 INFO  [org.quartz.xml.XMLSchedulingDataProcessor] (MSC service thread 1-8) Parsing XML file: jobs.xml with systemId: jobs.xml
13:49:30,403 INFO  [org.quartz.xml.XMLSchedulingDataProcessor] (MSC service thread 1-8) Adding 1 jobs, 1 triggers.
13:49:30,403 INFO  [org.quartz.xml.XMLSchedulingDataProcessor] (MSC service thread 1-8) Adding job: MYJOB_GROUP.journal_report_job

但是,然后我开始在日志中得到这个:

13:50:40,165 WARN  [org.quartz.jobs.FileScanJob] (ReportScheduler_Worker-2) File 'jobs.xml' does not exist.

基本上,XMLSchedulingDataProcessor 能够找到 jobs.xml,但 FileScanJob 不是。

如果可能的话,我想将 jobs.xml 留在 WAR 中,因为它使应用程序易于安装和维护,因为所有必要的文件都在一个包中。但 FileScanJob 似乎无法处理这个问题。

那么如何更改 org.quartz.plugin.jobInitializer.fileNames 属性的值,以便 XMLSchedulingDataProcessor 和 FileScanJob 都能理解它呢?

谢谢。

4

0 回答 0