java - java.lang.NoSuchMethodError:org.quartz.Scheduler.deleteTrigger(Ljava/lang/String;Ljava/lang/String;)V
问题描述
尝试删除 jon 并触发以下错误时出现此错误是我的代码
JobKey jobKey = JobKey.jobKey(jobName);
if (scheduler.checkExists(jobKey)) {
log.info("job found for "+ jobName);
boolean isdeletted = scheduler.deleteJob(new JobKey(jobName));
if (!isdeletted) {
log.error("job not deleted");
}
}
scheduler.unscheduleJob(new TriggerKey(triggerName));
请帮助我。下面是淀粉痕迹
java.lang.NoSuchMethodError: framwork.deleteTrigger(Ljava/lang/String;Ljava/lang/String;)V
at framwork
at framwork
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at framwork
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
at com.sun.proxy.$Proxy660.updatePartner(Unknown Source)
at framwork
at framwork
at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at framwork
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
这个错误的堆栈跟踪请帮助
解决方案
org.quartz.Scheduler#unscheduleJob
接受触发键作为参数。因此,您可以删除指定的触发器(绑定到您的工作)。
public static boolean removeJob(String jobName, String jobGroup) throws SchedulerException {
TriggerKey triggerKey = TriggerKey.triggerKey(jobName, jobGroup);
if (scheduler.checkExists(triggerKey)) {
scheduler.unscheduleJob(triggerKey); // trigger + job
}
logger.info(">>>>>>>>>>> removeJob success, triggerKey:{}", triggerKey);
return true;
}
希望有帮助。
有用的链接: https ://www.baeldung.com/quartz
更新
回到您遇到的异常,根本原因是您很可能针对缺少方法的类的不同版本编译了一个类,而不是您在运行它时使用的那个。
确保您的类路径中没有多个版本Quartz
。如果您使用 Maven 或 Gradle,请尝试清理您的项目并重建它。
推荐阅读
- matlab - 修改双线性插值matlab代码以放大图像
- c - AVR I/O 宏定义如何工作以允许访问寄存器?
- python - 如何处理 CV2(Cv2.imwrite) 中的错误?
- python - 如何仅比较包含相同列信息的两个文件的一部分?
- django - 在django中过滤对象时传递外键参数
- unit-testing - 我有一个 apache camel 测试用例,由于创建了不同的对象实例而失败。对象实例具有不同的 ID
- excel - 复制工作表 1 中的范围并粘贴到循环中下一张工作表的下一个空行
- python - 从子目录和子目录中导入时如何解决冲突的导入要求?
- azure-devops - 与本地机器相比,管道构建后packages文件夹的内容不同
- dom-manipulation - 谁能告诉我为什么错误在我的代码中显示它是基本的 addeventlistener 格式