यह बहुत सीधे आगे होना चाहिए, लेकिन मुझे कोई नौकरी निष्पादित नहीं की जा रही है। मेरे पास कार्य की निष्पादन() विधि पर ब्रेकपॉइंट है, कोई धागा कभी नहीं मिलता है। मुझे क्या गलत नहीं मिल रहा है।क्वार्ट्ज सरल ट्रिगर फायरिंग नहीं
नौकरी
class Printer implements Job{
public Printer(){
System.out.println("created printer");
}
@Override
public void execute(JobExecutionContext context)
throws JobExecutionException {
System.out.println("hi" + context.getFireTime());
}
}
मुख्य वर्ग
class MyClass {
public static void main(String[] args) throws Throwable {
Scheduler s = StdSchedulerFactory.getDefaultScheduler();
JobDetail job = newJob(Printer.class).build();
CronTrigger trigger =
newTrigger()
.withIdentity("a", "t")
.withSchedule(cronSchedule("0/5 * * * * ?").inTimeZone(TimeZone.getDefault()))
.forJob(job).build();
s.scheduleJob(job, trigger);
// This prints the right date!
System.out.println(trigger.getNextFireTime());
s.start();
}
}
संपादित: मुझे पता चला मैं quartz.property फ़ाइल नहीं था, इसलिए वहाँ संभावना क्वार्ट्ज के लिए ThreadPool था कभी नहीं बनाया
DirectSchedulerFactory.getInstance().createVolatileScheduler(10);
Scheduler s = DirectSchedulerFactory.getInstance().getScheduler();
पता है क्या: इसलिए के रूप में documentation में पढ़ा है, मुझे कोड को निम्न से StdSchedulerFactory का उपयोग कर की जगह? अभी तक कोई भाग्य नहीं है। वही समान प्रभाव। आवेदन जिंदा रहता है, फायरिंग ट्रिगर नहीं करता है।
क्या आपका प्रोग्राम अभी समाप्त नहीं हुआ है? – Dariusz
नहीं क्योंकि मैं शेड्यूलर को बंद नहीं करता (उद्देश्य में)। – sscarduzio
क्या आपने वास्तव में पुष्टि की थी कि आपका एप्लिकेशन बस 's.start() 'के ठीक बाद समाप्त नहीं होता है? – Dariusz