<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/easy-distributed-scheduled-jobs-with-jobrunr-and-spring-boot-vwawkzyyj" -->

---
title: Easy distributed / scheduled jobs with JobRunr and...
description: JobRunr, a distributed job scheduling library for Java, is now available on the Spring Initializr. The walkthrough demonstrates setting up JobRunr with Spring...
canonical: https://daily.dev/posts/easy-distributed-scheduled-jobs-with-jobrunr-and-spring-boot-vwawkzyyj
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Easy distributed / scheduled jobs with JobRunr and Spring Boot | daily.dev
og:description: JobRunr, a distributed job scheduling library for Java, is now available on the Spring Initializr. The walkthrough demonstrates setting up JobRunr with Spring...
og:url: https://daily.dev/posts/easy-distributed-scheduled-jobs-with-jobrunr-and-spring-boot-vwawkzyyj
og:image: https://api.daily.dev/og/posts/VwaWKZYyJ.png
og:image:alt: Easy distributed / scheduled jobs with JobRunr and Spring Boot
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Easy distributed / scheduled jobs with JobRunr and Spring Boot

**[Coffee \+ Software](https://daily.dev/sources/coffee-software)** · 13 min read · 8 upvotes · 0 comments

## Summary

JobRunr, a distributed job scheduling library for Java, is now available on the Spring Initializr. The walkthrough demonstrates setting up JobRunr with Spring Boot and PostgreSQL, covering one-time scheduled jobs, recurring cron-based jobs, and a carbon-aware scheduling feature that consults local energy grid data to run jobs at the most energy-efficient time. The demo also shows the built-in dashboard for monitoring job states, OpenTelemetry/Grafana metrics integration, virtual thread support for scalability, and GraalVM native image compatibility for lightweight worker nodes.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.youtube.com/watch?v=KHTdPEYAMOM>

## Questions this post answers

### How do I add JobRunr to a Spring Boot project using Spring Initializr?

JobRunr is now available directly as a dependency option on start.spring.io, the Spring Initializr. Selecting it alongside Postgres, Spring JDBC, web, actuator, and OpenTelemetry support generates a project with JobRunr's autoconfiguration already wired in, including GraalVM native image support, so background job servers, dashboard, and metrics can be enabled with simple configuration properties.

_Developers wiring up Spring Boot job scheduling can track library integrations like JobRunr on daily.dev._

### How does JobRunr's carbon-aware job scheduling feature work?

Carbon-aware scheduling in JobRunr consults local energy grid services to determine the most cost-effective and greenest time to run a job within a specified time window, such as between noon and 1pm. Jobs marked as carbon-aware show a green indicator in the dashboard and get queued to run at the calculated optimal time rather than immediately, useful when exact timing is flexible.

_Teams weighing sustainability features in scheduling tools can follow developments like this on daily.dev._

### How does JobRunr compare to Quartz for job scheduling in Java?

JobRunr is described as gaining significantly more community traction and conference visibility than Quartz, the long-established Java job scheduling library, even though Quartz remains supported. JobRunr offers simpler setup, a built-in dashboard, recurring cron-based jobs, distributed background servers that share a database, virtual thread support, and native image compatibility via GraalVM for lightweight worker nodes.

_Developers deciding between Quartz and JobRunr for Java scheduling can compare trade-offs on daily.dev._

## Similar posts on daily.dev

- [JobRunr Introduces ClawRunr, an Open-Source Java AI Agent](https://daily.dev/posts/jobrunr-introduces-clawrunr-an-open-source-java-ai-agent-xbn1g5r1z) · InfoQ · 1 upvotes · 0 comments
- [DB-Scheduler: A Persistent, Cluster-Friendly Scheduler for Java](https://daily.dev/posts/db-scheduler-a-persistent-cluster-friendly-scheduler-for-java-najdvpqye) · Baeldung · 17 upvotes · 1 comments

---

Tags: [#java](https://daily.dev/tags/java), [#distributed-systems](https://daily.dev/tags/distributed-systems), [#spring-boot](https://daily.dev/tags/spring-boot)

[View this post on daily.dev](https://daily.dev/posts/easy-distributed-scheduled-jobs-with-jobrunr-and-spring-boot-vwawkzyyj)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Easy distributed / scheduled jobs with JobRunr and Spring Boot","url":"https://daily.dev/posts/easy-distributed-scheduled-jobs-with-jobrunr-and-spring-boot-vwawkzyyj","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/easy-distributed-scheduled-jobs-with-jobrunr-and-spring-boot-vwawkzyyj"},"datePublished":"2026-08-05T09:41:12.490Z","dateModified":"2026-09-13T20:33:04.068Z","description":"JobRunr, a distributed job scheduling library for Java, is now available on the Spring Initializr. The walkthrough demonstrates setting up JobRunr with Spring...","image":"https://i.ytimg.com/vi/KHTdPEYAMOM/sddefault.jpg","thumbnailUrl":"https://i.ytimg.com/vi/KHTdPEYAMOM/sddefault.jpg","isAccessibleForFree":true,"articleSection":"Coffee + Software","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Coffee + Software","logo":"https://media.daily.dev/image/upload/s--nAGLloYn--/f_auto,q_auto/v1773648811/logos/coffee-software?_a=BAMAMiiu0","url":"https://daily.dev/sources/coffee-software"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/easy-distributed-scheduled-jobs-with-jobrunr-and-spring-boot-vwawkzyyj","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":8},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"java,distributed-systems,spring-boot","timeRequired":"PT13M","video":{"@type":"VideoObject","name":"Easy distributed / scheduled jobs with JobRunr and Spring Boot","description":"JobRunr, a distributed job scheduling library for Java, is now available on the Spring Initializr. The walkthrough demonstrates setting up JobRunr with Spring...","thumbnailUrl":"https://i.ytimg.com/vi/KHTdPEYAMOM/sddefault.jpg","uploadDate":"2026-08-05T09:41:12.490Z","duration":"PT13M","url":"https://api.daily.dev/r/VwaWKZYyJ","embedUrl":"https://www.youtube.com/embed/KHTdPEYAMOM"}}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Coffee + Software","item":"https://daily.dev/sources/coffee-software"},{"@type":"ListItem","position":3,"name":"Easy distributed / scheduled jobs with JobRunr and Spring Boot"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/easy-distributed-scheduled-jobs-with-jobrunr-and-spring-boot-vwawkzyyj#faq","mainEntity":[{"@type":"Question","name":"How do I add JobRunr to a Spring Boot project using Spring Initializr?","acceptedAnswer":{"@type":"Answer","text":"JobRunr is now available directly as a dependency option on start.spring.io, the Spring Initializr. Selecting it alongside Postgres, Spring JDBC, web, actuator, and OpenTelemetry support generates a project with JobRunr's autoconfiguration already wired in, including GraalVM native image support, so background job servers, dashboard, and metrics can be enabled with simple configuration properties. Developers wiring up Spring Boot job scheduling can track library integrations like JobRunr on daily.dev."}},{"@type":"Question","name":"How does JobRunr's carbon-aware job scheduling feature work?","acceptedAnswer":{"@type":"Answer","text":"Carbon-aware scheduling in JobRunr consults local energy grid services to determine the most cost-effective and greenest time to run a job within a specified time window, such as between noon and 1pm. Jobs marked as carbon-aware show a green indicator in the dashboard and get queued to run at the calculated optimal time rather than immediately, useful when exact timing is flexible. Teams weighing sustainability features in scheduling tools can follow developments like this on daily.dev."}},{"@type":"Question","name":"How does JobRunr compare to Quartz for job scheduling in Java?","acceptedAnswer":{"@type":"Answer","text":"JobRunr is described as gaining significantly more community traction and conference visibility than Quartz, the long-established Java job scheduling library, even though Quartz remains supported. JobRunr offers simpler setup, a built-in dashboard, recurring cron-based jobs, distributed background servers that share a database, virtual thread support, and native image compatibility via GraalVM for lightweight worker nodes. Developers deciding between Quartz and JobRunr for Java scheduling can compare trade-offs on daily.dev."}}]}
```

