我有这份工作:
class MyJob {
static triggers = {
cron name:"some job", cronExpression:"0 0 * * * ? *"
}
def execute() {
log.info "job runs"
}
}
这项工作应该每小时运行一次。我认为问题是cronExpression。这就是为什么我把它改成上面的表达式。在我有这个表达之前:
0 0 0/1 1/1 * ? *
但这些表达都不起作用。
我的设置:
我有10个工作,每5分钟到每月一次。 除了这一项之外,每项工作似乎都在运行......
我的问题:
答案 0 :(得分:0)
不用年份尝试:
static triggers = {
cron name: 'myTrigger', cronExpression: "0 0 0-23 * * ?"
}
你可以控制它f.e.通过预测执行时间和准备正确的表达方式(每月只触发两次;在每月的第一天,凌晨1点和凌晨2点):
static triggers = {
cron name: 'myTrigger', cronExpression: "0 0 1-2 1 * ?"
}
目前插件支持三种类型的触发器:
- simple - 每个定义的间隔执行一次(例如“每10秒钟”);
- cron - 使用cron表达式执行作业(例如“每周一至周五上午8:00”);
- custom - 您的Trigger接口的实现。
还记得:
触发器名称属性在所有触发器中必须是唯一的 应用
默认情况下,在测试下运行时不会执行作业 环境。
您可以找到更多示例here。