Я использую кварцевые выражения для создания триггера, который должен выполняться только по понедельникам, а day of month не должен быть 1.
Я уже знаю, что выражение 0 5 0 2-31 * MON не работает, потому что Specifying both a day-of-week and a day-of-month parameter is not implemented. Есть ли способ обхода проблемы? Как я могу это достичь?
Подводя итог, если 1-й день месяца - понедельник, вышеуказанное выражение не должно быть выполнено, но для других понедельников месяца оно должно быть выполнено.
В качестве поддержки для указания как дня недели, так и параметра дня месяца не используется, вы можете попробовать:
@Scheduled(cron = "0 5 0 ? * MON")
private void doTask(){
if(LocalDate.now().getDayOfMonth() != 1){
//your code here
}
}
Вы также можете поддерживать для указав как день недели И параметр дня дня не реализован, и генерирует кукурузу для кварца здесь.