Quartz: org.quartz.SchedulerConfigException: Die Anzahl der Threads muss> 0 sein

Quartz: org.quartz.SchedulerConfigException: Die Anzahl der Threads muss> 0 sein

Wenn Sie mit Quartz 2 arbeiten, wird beim Ausführen des Projekts die folgende Fehlermeldung angezeigt?

    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)

Lösung

Sie haben eine Datei "quartz.properties" definiert und den Standardwert für die Thread-Anzahl von Quartz überschrieben.

Um dies zu beheben, können Sie:

  1. Löschen Sie Ihre "quartz.properties". Normalerweise wird diese Datei nur für die vorherige Konfiguration benötigt. Normalerweise benötigt ein einfaches Projekt dies nicht.

  2. Definiert einenorg.quartz.threadPool.threadCount-Wert richtig.

File : quartz.properties - Arbeitsprobe.

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