如何开始独立的石英工作

时间:2012-10-16 14:41:36

标签: maven cron quartz-scheduler

public class CronTriggerExample
{
public static void main(String[] args) throws Exception
{
    try
    {
        JobDetail job = JobBuilder.newJob(HelloJob.class).withIdentity("dummyJobName", "group1").build();

        Trigger trigger =
                TriggerBuilder.newTrigger().withIdentity("dummyTriggerName", "group1")
                        .withSchedule(CronScheduleBuilder.cronSchedule("0/2 * * * * ?")).build();

        // schedule it
        Scheduler scheduler = new StdSchedulerFactory().getScheduler();
        scheduler.start();
        scheduler.scheduleJob(job, trigger);
        return;
    }
    catch (SchedulerException e)
    {
        e.printStackTrace();
    }
}
}

我正在使用quartz来在我的服务器上设置一些crons。但是如何在服务器上执行此文件以便可以安排cron。我试图使用插件 “org.codehaus.mojo”执行java文件。但是当我运行mvn install作为deamon时,它总是创建一个新的触发器。该怎么做才能在“mvn install”上重新初始化cron。

1 个答案:

答案 0 :(得分:0)

您编写main方法的方式,应用程序将在安排作业后立即退出。虽然石英任务是在不同的线程中安排的,但是当进程结束时它会杀死所有活动的线程。

只需在while (true) {}之后添加scheduler.scheduleJob语句即可保持应用程序正常运行。

现在,让maven构建你的jar并执行java -jar myjar.jar