quartz.properties
org.quartz.scheduler.instanceName = TestScheduler
org.quartz.scheduler.instanceId = one
org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 2
org.quartz.threadPool.threadPriority = 4
org.quartz.plugin.triggHistory.class = org.quartz.plugins.history.LoggingTriggerHistoryPlugin
org.quartz.plugin.triggHistory.triggerFiredMessage = Trigger {1}.{0} fired job {6}.{5} at: {4, date, HH:mm:ss MM/dd/yyyy}
org.quartz.plugin.triggHistory.triggerCompleteMessage = Trigger {1}.{0} completed firing job {6}.{5} at {4, date, HH:mm:ss MM/dd/yyyy} with resulting trigger instruction code: {9}
org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.JobInitializationPlugin
org.quartz.plugin.jobInitializer.fileName = quartz_jobs.xml
org.quartz.plugin.jobInitializer.overWriteExistingJobs = false
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.plugin.shutdownhook.class = org.quartz.plugins.management.ShutdownHookPlugin
org.quartz.plugin.shutdownhook.cleanShutdown = true
quartz_jobs.xml
<?xml version='1.0' encoding='UTF-8'?> <quartz> <job> <job-detail> <name>Job_Email</name> <group>DEFAULT</group> <job-class>com.hnyyzw.newview.quartz.PreSendEmail</job-class> <job-data-map allows-transient-data="true"> <entry> <key>name</key> <value>test</value> </entry> </job-data-map> </job-detail> <trigger> <cron> <name>Trigger_Email</name> <group>DEFAULT</group> <job-name>Job_Email</job-name> <job-group>DEFAULT</job-group> <cron-expression>0 0/1 * * * ?</cron-expression> </cron> </trigger> </job> </quartz>
遇到的问题
1.java.io.UTFDataFormatException: Invalid byte 1 of 1-byte UTF-8 sequence.
解决方法:xml文件的内容是从网上复制粘贴到本地的。 所以其中的符号可能是中文状态下的。比如那个单书名号<>是中文状态下的,后来我手工重新写的时候在字母输入状态下,改完后,解析就正确了。
所以有时候肉眼并不是那么容易分辨出来拷贝的东西到底是不是自己需要的。尤其是现在的编辑器那么多……结果费了很长时间也解决不了。因为这不是技术性错误,而是隐藏性错误。
2."QuartzInitializer" failed to preload on startup in Web application
应该是jar包的问题,搞了很久最后把所有的core和optional文件夹里的jar包导入,可以了。但不确定。
3.quartz1.7.jar 不能用在jdk1.4的工程里。