Я обнаружил, что проблема для меня заключается в том, что кварц отключается, но веб-приложение не дожидается его завершения до завершения работы, поэтому Tomcat решил, что он оставил работающие потоки, и пожаловался.
Итак, я управлял своим планировщиком так:
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
...do some stuff with the scheduler...
scheduler.shutdown(true);
Обратите внимание, что логический аргумент shutdown является жизненно важной частью . Если вы удалите этот true
, чтобы вызвать версию без аргументов, или установите его на false
, ваше веб-приложение не будет ждать, пока кварц исчезнет, прежде чем оно выключится.
TL; DR: позвоните scheduler.shutdown(true)
, чтобы заставить ваше веб-приложение ждать завершения кварца.