将石英调度器jar从版本2.1.6升级到2.3.2。将quartz.properties设置为旧配置,并在我的quartz.properties中调用了插件XMLSchedulingDataProcessorPlugin,我开始收到classNotFound异常。因此,我继续对石英罐进行反编译,发现2.3.2版本中缺少org.quartz.jobs包。谁能帮助解决这个问题?
例外是接收以下:
Caused by: java.lang.ClassNotFoundException: org.quartz.jobs.FileScanListener
at java.net.URLClassLoader.findClass(URLClassLoader.java:607) ~[?:1.8.0-internal]
at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:844) ~[?:1.8.0-internal]
at java.lang.ClassLoader.loadClass(ClassLoader.java:823) ~[?:1.8.0-internal]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:325) ~[?:1.8.0-internal]
at java.lang.ClassLoader.loadClass(ClassLoader.java:803) ~[?:1.8.0-internal]
at java.lang.ClassLoader.defineClassImpl(Native Method) ~[?:1.8.0-internal]
at java.lang.ClassLoader.defineClass(ClassLoader.java:349) ~[?:1.8.0-internal]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:154) ~[?:1.8.0-internal]
at java.net.URLClassLoader.defineClass(URLClassLoader.java:727) ~[?:1.8.0-internal]
at java.net.URLClassLoader.access$400(URLClassLoader.java:95) ~[?:1.8.0-internal]
at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:1182) ~[?:1.8.0-internal]
at java.security.AccessController.doPrivileged(AccessController.java:686) ~[?:1.8.0-internal]
at java.net.URLClassLoader.findClass(URLClassLoader.java:602) ~[?:1.8.0-internal]
at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:844) ~[?:1.8.0-internal]
at java.lang.ClassLoader.loadClass(ClassLoader.java:823) ~[?:1.8.0-internal]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:325) ~[?:1.8.0-internal]
at java.lang.ClassLoader.loadClass(ClassLoader.java:803) ~[?:1.8.0-internal]
at org.quartz.simpl.InitThreadContextClassLoadHelper.loadClass(InitThreadContextClassLoadHelper.java:72) ~[quartz-2.3.2.jar:?]
at org.quartz.simpl.CascadingClassLoadHelper.loadClass(CascadingClassLoadHelper.java:114) ~[quartz-2.3.2.jar:?]
at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1084) ~[quartz-2.3.2.jar:?]
... 3 more
下面是我的quartz.properties:
org.quartz.scheduler.instanceName = TESTAPP
org.quartz.scheduler.jmx.export = true
org.quartz.threadPool.threadCount = 5
org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore
org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin
org.quartz.plugin.jobInitializer.fileNames = testapp-jobs.xml
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.plugin.jobInitializer.scanInterval = 0
org.quartz.plugin.jobInitializer.wrapInUserTransaction = false
从此专家repository,您需要使用最新版本的quartz-jobs
jar文件。
我可以在名为org.quartz.jobs
的程序包下看到FileScanListener.class文件。
我希望这会有所帮助。