一、配置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接口并提供多任务文件加载功能,将会是解决这个事情的好方法