J'utilise Quartz Scheduler avec Spring. Je veux configurer la même chose avec le calendrier suivant:
Exécuter le travail toutes les 10 minutes à partir de maintenant
J'utilise l'expression suivante pour la même chose.
0 */10 * * * ?
Je pensais que * dans le champ des minutes le ferait fonctionner la première minute, mais ce n'est pas le cas. Il s'exécute les 10 premières minutes à partir de maintenant, puis toutes les 10 minutes par la suite. Quelqu'un peut-il me suggérer la raison de ce comportement et la solution à mon problème également?
vérifiez la minute où vous en êtes maintenant et ajoutez-les en tant que liste à votre contrôleur. si vous démarrez le déclencheur à la minute 12, par exemple, ajoutez
0 2,12,22,32,42,52 * * * ?
comme expression cron
Éditer:
Une autre solution serait de définir un déclencheur simple qui se répète toutes les dix minutes
SimpleTrigger trigger = new SimpleTrigger("myTrigger",
null,
new Date(),
null,
SimpleTrigger.REPEAT_INDEFINITELY,
10L * 60L * 1000L);
0 0/10 * 1/1 * ? *
Veuillez voir: http://www.cronmaker.com/
Vous pouvez utiliser quelque chose comme
0 1-59/10 * * * ?
Cela déclenchera le travail à n'importe quelle minute et 10 minutes après cela. Je ne l'ai pas essayé mais ça a l'air bien. :)