一、配置job的xml里<start-time>的时间格式
从源码JobSchedulingDataProcessor类中可以看出:格式例如(2012-03-31T05:55:00)
/**
* XML Schema dateTime datatype format.
* <p>
* See <a href="http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#dateTime">
* http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#dateTime</a>
*/
protected static final String XSD_DATE_FORMAT = "yyyy-MM-dd'T'hh:mm:ss";
二、quartz.properties配置filename
org.quartz.plugin.jobInitializer.fileName = my_quartz_jobs.xml
修改为
org.quartz.plugin.jobInitializer.fileNames = my_quartz_jobs.xml
否则可能会报错:
Exception in thread "main" org.quartz.SchedulerException: JobStore SchedulerPlugin 'org.quartz.plugins.xml.JobInitializationPlugin' props could not be configured. [See nested exception: java.lang.NoSuchMethodException: No setter for property 'fileName']
at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1013)
at org.quartz.impl.StdSchedulerFactory.getScheduler(StdSchedulerFactory.java:1399)
at org.quartz.impl.StdSchedulerFactory.getDefaultScheduler(StdSchedulerFactory.java:1415)
at com.gyb.JobScheduler.startScheduler(JobScheduler.java:28)
at com.gyb.JobScheduler.main(JobScheduler.java:23)
Caused by: java.lang.NoSuchMethodException: No setter for property 'fileName'
at org.quartz.impl.StdSchedulerFactory.setBeanProps(StdSchedulerFactory.java:1287)
at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1011)
... 4 more
三、quartz.properties配置插件由于版本的不同配置发生改变
org.quartz.plugin.jobInitializer.class =org.quartz.plugins.xml.JobInitializationPlugin
1.6~1.8修改为
org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin
四、如何使Quartz加载多个job.xml
实现SchedulerPlugin接口并提供多任务文件加载功能,将会是解决这个事情的好方法