[英]Possible to run the same job with different trigger in quartz?
我使用以下代碼創建多個觸發器,然后將所有這些觸發器綁定到一個作業。 但它失敗了
"org.quartz.ObjectAlreadyExistsException: Unable to store Job : 'Group.Job', because one already exists with this identification.
"
for (SchedulerBean schedulerBean : schedulerList) {
Trigger trigger = newTrigger()
.withIdentity("trigger_" + schedulerBean.getConnectorID())
.usingJobData("ID", schedulerBean.getConnectorID())
.withSchedule(cronSchedule(schedulerBean.crontab))
.forJob(job)
.build();
sched.scheduleJob(job, trigger);
}
sched.start();
從錯誤我懷疑sched.scheduleJob(job, trigger);
部分嘗試多次安排相同的工作。
嘗試添加sched.addJob(job, true);
在for循環之前只添加一次('true'用於替換舊作業,如果存在),並在循環內使用sched.scheduleJob(trigger);
而不是sched.scheduleJob(job, trigger);
sched.scheduleJob(trigger);
因為您使用.forJob(job)
屬性指定了它,所以能夠將觸發器添加到作業中
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.