Разработка Кварц 2.1.5 + Весна 3.1.2.ВЫПУСК , выдает следующие сообщения об ошибках:
Caused by: java.lang.IncompatibleClassChangeError: class org.springframework.scheduling.quartz.JobDetailBean has interface org.quartz.JobDetail as super class at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) at java.lang.ClassLoader.defineClass(ClassLoader.java:615) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2901) at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1170) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556) at org.springframework.util.ClassUtils.forName(ClassUtils.java:258) ... 19 more
Решение
API-интерфейсы Quartz 2 сильно изменены, и кто-то уже заполнил отчет об ошибке на Spring JIRA. В данный момент ” Пружина 3 НЕСОВМЕСТИМА с кварцем 2 “.
Вот 3 альтернативы:
- Используйте кварц 1.8.5, пружина 3 отлично интегрирована с кварцем 1.x, классическим и стабильным.
- Не используйте Spring
QuartzJobBean
для интеграции, используйте интерфейс/класс Quartz напрямую. - Последнее, что еще? Пожалуйста, подождите, пока ошибка будет исправлена.
Оригинал: “https://mkyong.com/spring/incompatibleclasschangeerror-jobdetailbean-has-interface-org-quartz-jobdetail-as-super-class/”