3

我正在开发定期服务。

该应用程序是使用 JDK 1.6、Spring Framework 2.5.6 和 Quartz 1.8.4 开发的,用于调度作业。

我有两台使用 WebLogic Server 10.3.5 的集群服务器。

我注意到的行为是,如果从应用程序中删除(或重命名)作业,Quartz 会继续尝试启动旧作业(它似乎已注册在 Quartz 用于同步其实例的数据库中)。

有人可以解释这种行为的原因吗?

我的需要是,当我在应用程序中删除作业并重新启动 WebLogic 实例时,Quartz 不会尝试启动旧作业。

提前致谢

4

1 回答 1

2

您需要从石英调度程序中明确删除作业,您这样做了吗?例如,如果你有这个调度器

private org.quartz.Scheduler myScheduler = null;

你需要调用:

myScheduler.deleteJob(...

当作业被删除或重命名时。

如果这样做,也许您传递的密钥不正确?

或者,当您构建石英作业时,您可以使用:jobBuilder.storeDurably(false) 当不再有关联的活动触发器时,这将导致您的石英作业被自动删除。

于 2013-03-29T10:26:23.253 回答