我正在深入研究一个使用石英调度程序的camel路径的项目。我对环境有点不熟悉,但在尝试改变功能的同时,试图弄清楚发生了什么以及一切如何融合在一起。只是不确定如何。
该组件是部署到Apache Karaf的作业管理器。如果我有一个活动作业的计划(quartz cron),那么作业在匹配cron字符串时运行。可以禁用该计划(其设置从我可以告诉的切换autoStartup标志)。这是按预期工作的。
如果我禁用了计划,请等待cron字符串匹配,然后重新启用计划,作业就会运行。我想改变这种行为,将日程安排配置为仅对日程表处于活动状态时匹配的cron字符串执行,而不是“赶上”#34;来自禁用的autostartup的匹配项。这可能吗?
我在去年十月看到一个类似的问题,但从未回答 - Camel Quartz route undesired job execution at route startup
答案 0 :(得分:1)
在Quartz触发器上有MisfireInstruction属性,可以设置为MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY
(等于-1)
不幸的是,我不知道如何从Camel Quartz组件中设置它。添加trigger.misfireInstruction=-1
或trigger.MisfireInstruction=-1
之类的内容可能会有效。