Как запланировать запуск crontrigger на определенные дни недели? - PullRequest
0 голосов
/ 14 октября 2019

У меня есть работа для выполнения в субботу и воскресенье, но не в рабочие дни. Вот как я планирую это:

myTriggerBuilder.withSchedule(cronSchedule("0 0 0 * * ?")).build();

Это будет выполняться в 00:00:00 по серверному времени каждый день. Однако я бы хотел, чтобы это работало только в субботу и воскресенье, однако в американских календарях суббота - это конец недели, а воскресенье - начало недели. Я искал в документах пример или описание, которое объясняет, как я могу указать определенные дни недели, а не интервалы, но документы либо не предоставляют эту информацию, либо я пропустил ее. Я пробовал это так:

myTriggerBuilder.withSchedule(cronSchedule("0 0 0 * * SAT,SUN")).build();

Однако все это потерпело крах:

java.lang.RuntimeException: CronExpression '0 0 0 * * SAT, SUN' isневерно.

Есть ли способ выразить то, что я хочу, то есть сообщить планировщику, в какие дни недели я намереваюсь выполнить задание?

Ответы [ 2 ]

1 голос
/ 14 октября 2019

Можете ли вы попробовать это?

0 0 0 ? * SUN,SAT *

См .: Это

1 голос
/ 14 октября 2019

Вы можете попробовать выражение как (например, вы хотите начать 8:05 воскресенье 0 для воскресенья и 6 для субботы)

5 8 * * 0,6

Вы можете проверить эту ссылку

https://crontab.guru/every-weekend

...