Java 为什么';石英管不行吗?

Java 为什么';石英管不行吗?,java,concurrency,quartz-scheduler,Java,Concurrency,Quartz Scheduler,我使用Quartz lib,我有如下简单代码: public void run() { try { SchedulerFactory factory = new StdSchedulerFactory(); Scheduler scheduler = factory.getScheduler(); scheduler.start(); JobDetail job = JobBuilder

我使用Quartz lib,我有如下简单代码:

public void run() {
    try {

        SchedulerFactory factory = new StdSchedulerFactory();
        Scheduler scheduler = factory.getScheduler();
        scheduler.start();

        JobDetail job = JobBuilder
                .newJob(HelloWorldJob.class)
                .withIdentity("tJob")
                .build();

        Trigger t = TriggerBuilder
                .newTrigger()
                .withIdentity("tTrigger")
                .startNow()
                .withSchedule(CronScheduleBuilder.dailyAtHourAndMinute(19, 50).inTimeZone(TimeZone.getDefault()))
                .build();


        scheduler.scheduleJob(job, t);
    } catch (Exception e) {
        e.printStackTrace();
    }
}
职业类别:

public class HelloWorldJob implements Job {
    @Override
    public void execute(JobExecutionContext context) throws JobExecutionException {
        System.out.println("HELLO WORLD");
    }
}
19:50-是我期望看到结果的时候。 但它不起作用。 这部分代码有什么问题

也许我忘了什么。请帮帮我

另外,我试过使用
.inTimeZone(TimeZone.getDefault())
但没有。我在这两方面都得到了相同的结果

天哪 今天工作很好。但我发誓,昨天它没用。 也许是时间可视化的问题? 今天我设定了11小时52分钟。它在11:52运行良好,并在控制台上写“Hello”,但昨天我写了19:50,它没有工作。 我应该在另一个时间系统中写作吗?上午/下午?
或者什么鬼东西?

run方法中的代码似乎还可以。
t
的失火指令是什么?也就是说,
t.getMisfireInstruction()。在安排作业后,您是否可以检查下一次触发时间(
t.getFireTimeAfter(new Date())
)?run方法中的代码似乎没有问题。
t
的失火指令是什么?也就是说,
t.getMisfireInstruction()。您能否在安排作业后检查下一次启动时间(
t.getFireTimeAfter(new Date())
)?