Home โบ Convert โบ Jenkins to Quartz
Convert Jenkins cron to Quartz
Jenkins expressions look similar to Quartz, but the differences matter. Paste yours below; the result is checked against the original run times.
What changes from Jenkins to Quartz
- Quartz has a leading seconds field. The converter adds
0in front so the job fires at the start of the minute. - Jenkins numbers Sunday as 0, but Quartz uses 1-7 starting on Sunday. Every weekday number is increased by one (Monday-Friday becomes 2-6).
- Quartz requires a
?in exactly one of the two day fields. The converter puts it in the day field you did not use. - Quartz has a year field. The converter appends
*so the schedule repeats every year. - Jenkins runs when day-of-month or day-of-week matches, but Quartz requires both. If you set both fields, the converter warns you.
- Jenkins
Hvalues pick a per-job offset, which no other system has. The converter replaces them with the start of the range.
Worked examples
| Schedule | Jenkins | Quartz |
|---|---|---|
| every minute | * * * * * | 0 * * * * ? |
| every weekday at 8:30 AM | 30 8 * * 1-5 | 0 30 8 ? * 2-6 |
Conversions that come with a warning
- every 5 minutes:
H/5 * * * *โ0 */5 * * * ?. Jenkins H values have no equivalent elsewhere; they were replaced by their range start. - every 10 minutes:
H/10 * * * *โ0 */10 * * * ?. Jenkins H values have no equivalent elsewhere; they were replaced by their range start. - every 15 minutes:
H/15 * * * *โ0 */15 * * * ?. Jenkins H values have no equivalent elsewhere; they were replaced by their range start. - every 30 minutes:
H/30 * * * *โ0 */30 * * * ?. Jenkins H values have no equivalent elsewhere; they were replaced by their range start.
Field layout and time zones
minute (0-59), hour (0-23), day-of-month (1-31), month (1-12), day-of-week (0-7, 0 and 7 = Sunday).
Jenkins uses the controller's time zone. Put TZ=Asia/Kolkata on its own first line of the trigger to override it.
second (0-59), minute (0-59), hour (0-23), day-of-month (1-31), month (1-12), day-of-week (1-7, 1 = Sunday), year (1970-2199, optional).
Quartz uses the JVM default time zone unless you set one: CronScheduleBuilder.cronSchedule(expr).inTimeZone(TimeZone.getTimeZone("UTC")).
Go the other way
Convert Quartz to Jenkins, or open the Jenkins builder or the Quartz builder.
Frequently asked questions
How do I convert a Jenkins cron expression to Quartz?
Paste it into the converter above with Jenkins as the source and Quartz as the target. For example, * * * * * becomes 0 * * * * ?.
Is every Jenkins expression convertible to Quartz?
Yes for the common schedules we tested (27 of 27), though unusual expressions with special characters might need manual review.
Does Quartz run in the same time zone as Jenkins?
Not necessarily. Conversion changes the syntax, not the time zone. Check where each system evaluates the schedule before you rely on the same clock times.