diff --git a/org.springframework.context.support/src/main/java/org/springframework/scheduling/quartz/QuartzJobBean.java b/org.springframework.context.support/src/main/java/org/springframework/scheduling/quartz/QuartzJobBean.java index 7c0ad0e005..6b193b43d5 100644 --- a/org.springframework.context.support/src/main/java/org/springframework/scheduling/quartz/QuartzJobBean.java +++ b/org.springframework.context.support/src/main/java/org/springframework/scheduling/quartz/QuartzJobBean.java @@ -79,10 +79,12 @@ public abstract class QuartzJobBean implements Job { static { try { - getSchedulerMethod = JobExecutionContext.class.getMethod("getScheduler"); - getMergedJobDataMapMethod = JobExecutionContext.class.getMethod("getMergedJobDataMap"); + Class jobExecutionContextClass = + QuartzJobBean.class.getClassLoader().loadClass("org.quartz.JobExecutionContext"); + getSchedulerMethod = jobExecutionContextClass.getMethod("getScheduler"); + getMergedJobDataMapMethod = jobExecutionContextClass.getMethod("getMergedJobDataMap"); } - catch (NoSuchMethodException ex) { + catch (Exception ex) { throw new IllegalStateException("Incompatible Quartz API: " + ex); } }