Quartz: org.quartz.SchedulerConfigException: le nombre de threads doit être> 0
Travailler avec Quartz 2, lors de l'exécution du projet, atteint le message d'erreur suivant?
org.quartz.SchedulerConfigException: Thread count must be > 0
at org.quartz.simpl.SimpleThreadPool.initialize(SimpleThreadPool.java:245)
at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1255)
at org.quartz.impl.StdSchedulerFactory.getScheduler(StdSchedulerFactory.java:1484)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4791)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)
Solution
Vous avez défini un fichier «quartz.properties» et remplacez la valeur par défaut du nombre de threads de Quartz.
Pour y remédier, vous pouvez:
-
Supprimez votre «quartz.properties», normalement ce fichier n'est nécessaire que pour une configuration avancée. Normalement, un projet simple n’en a pas besoin.
-
Défini correctement une valeur
org.quartz.threadPool.threadCount.
File : quartz.properties - Échantillon de travail.
org.quartz.scheduler.instanceName = MyScheduler org.quartz.threadPool.threadCount = 3 org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore org.quartz.plugin.jobInitializer.class =org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin org.quartz.plugin.jobInitializer.fileNames = quartz-config.xml org.quartz.plugin.jobInitializer.failOnFileNotFound = true