【问题标题】:Quartz: Based on configured schedule, the given trigger will never fireQuartz:根据配置的时间表,给定的触发器永远不会触发
【发布时间】:2013-08-07 21:24:30
【问题描述】:

我在安排我的工作时收到“基于配置的计划,给定的触发器永远不会触发”错误。我尝试将“.startNow()”添加到触发器,但这并没有解决它。我不明白我做错了什么。

JobDetail jobDetail = newJob(DeploymentJob.class)
        .withIdentity(scheduleName)
        .usingJobData("uploadLocation", deployment.getUploadDir())
        .build();

// Add the job to the Scheduler
scheduler.addJob(jobDetail, true);

// Create the trigger with cron expression
Trigger trigger = newTrigger()
       .withIdentity(scheduleName)
       .withSchedule(cronSchedule(cron))
       .forJob(jobDetail)
       .build();

// Tell quartz to schedule the job using our trigger
scheduler.scheduleJob(jobDetail, trigger);                  <--- Problem line.

scheduler.start();

提前感谢您的回答!非常感谢!

【问题讨论】:

  • cronSchedule(cron) 返回什么?
  • 它返回 CronScheduleBuilder
  • cron 字符串是根据用户在前端选择的日期/时间构建的。这将永远是一个“单次运行”事件。示例:2012-07-23 15:30:00 Cron:0 30 3 23 7 ? 2012
  • 不应该是 0 30 15 23 7 吗? 2012
  • 你是对的!不知道我是怎么错过的,叹息。谢谢。我现在正在与一个不同的错误作斗争,但在问这里之前,让我自己花一些时间来解决这个问题。

标签: java cron quartz-scheduler


【解决方案1】:

你的设置时间超出了。Spring Quartz从不执行超出时间的任务。所以改变你的设置时间。

【讨论】:

  • 限制是多少?
  • 遥不可及是什么意思,极限是什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-22
相关资源
最近更新 更多