如何从Quartz调度程序查询预定作业?

Ada*_*old 0 java quartz-scheduler

Scheduler我的应用程序中有一个对象,我Job使用该scheduleJob方法添加了它.

在我的代码中,我立即安排JobTrigger:

TriggerBuilder.newTrigger().startNow().build();
Run Code Online (Sandbox Code Playgroud)

我的问题是如何判断哪些Job是我的SchedulergetCurrentlyExecutingJobs到目前为止,只有一种看似不可靠的方法.

Kar*_*hik 5

下面的代码列出了与调度程序相关的所有Quartz作业(Quartz 2.xx)

for (String groupName : scheduler.getJobGroupNames()) {

 for (JobKey jobKey : scheduler.getJobKeys(GroupMatcher.jobGroupEquals(groupName))) {

  String jobName = jobKey.getName();
  String jobGroup = jobKey.getGroup();

  //get job's trigger
  List<Trigger> triggers = (List<Trigger>) scheduler.getTriggersOfJob(jobKey);
  Date nextFireTime = triggers.get(0).getNextFireTime(); 

    System.out.println("[jobName] : " + jobName + " [groupName] : "
        + jobGroup + " - " + nextFireTime);

  }

}
Run Code Online (Sandbox Code Playgroud)