JobRunr & JobRunr Pro v8.4

Enhanced Kotlin support with Bazel compatibility, auto-configured serialization, and Micronaut 4.10

  • Nicholas D’hondt
  • January 14, 2026

JobRunr & JobRunr Pro v8.4

Say hi to JobRunr v8.4.0 and JobRunr Pro v8.4.0! This release introduces Kotlin class-based SAM conversions support (enabling Bazel usage without config changes), improved Jackson3JsonMapper configuration, full support for Micronaut 4.10.0, and fixes for cron expression parsing and job assertion exception handling.

New Features

  • Kotlin Class-based SAM Conversions: Kotlin lambdas compiled with Bazel’s rules_kotlin now work seamlessly with JobRunr. PR #1460

  • Auto-configured Kotlin Serialization: KotlinxSerializationJsonMapper is now automatically detected and configured when using the Fluent API. PR #1461

  • Configurable Polymorphic Type Validators: Jackson3JsonMapper now allows configuration of custom polymorphic type validators for enhanced security (see configuration guide). PR #1458

Kotlin + Bazel: Now It Just Works

If you’re a Kotlin developer using Bazel’s rules_kotlin, you may have encountered a NullPointerException when enqueueing Kotlin lambdas. The issue was that Bazel compiles lambdas using class-based SAM conversions, which JobRunr didn’t previously support.

All of these patterns now work regardless of your build tool:

jobScheduler.enqueue { myService.doSomething() }
jobScheduler.enqueue<MyService> { it.doSomething() }
jobScheduler.enqueue(myService::doSomething)

Thanks to @johnnymo87 for reporting this issue and helping us find the root cause!

Zero-Config Kotlin Serialization

KotlinxSerializationJsonMapper is now auto-configured when using the Fluent API. If you have kotlinx-serialization-json on your classpath, JobRunr will automatically use it:

// This now automatically configures KotlinxSerializationJsonMapper instead of JacksonJsonMapper!
JobRunr.configure()
    .useStorageProvider(storageProvider)
    .initialize()

Bug Fixes

  • Cron Expression Parsing: Fixed parsing of month step values in CronExpression. PR #1462
  • Job Assertion: Fixed assertJobExists to keep job parameter not deserializable exception. PR #1459

Misc

  • Micronaut 4.10 Compatibility: Updated Micronaut integration to 4.10.6. PR #1468
  • Updated Dependencies: Frontend and backend dependencies updated. PR #1467 and PR #1468

💼 New in JobRunr Pro v8.4.0

  • Flexible License Key Loading: Next to the already existing options, we’ve added the option to load your license from a remote server or from a file (call also be a shared drive). This makes it eaven easier to manage your license and easily update a license across all your JobRunr Pro instances (see usage guide). PR #772

  • Configurable Graceful Shutdown: Set a custom shutdown period when the StorageProvider becomes unhealthy (see configuration guide). PR #771

  • PostgreSQL Performance on Mac: Improved PostgreSQL performance for JobRunr on macOS. PR #773

  • Dashboard Enhancements:

    • Added logout button to control center. PR #759
    • Allow filtering on exception type from all tabs. PR #756

    Filter your failed jobs on Exception Type

  • Bug Fixes:

    • Fixed concurrent updates to pause or resume dynamic queues. PR #760
    • Resume scheduling recurring jobs when dynamic queue is resumed. PR #760
    • Fixed datagrid progress bar and batch children table flicker. PR #755

How to Upgrade

Simply update your dependency version to 8.4.0 in Maven or Gradle:

<dependency>
    <groupId>org.jobrunr</groupId>
    <artifactId>jobrunr</artifactId>
    <version>8.4.0</version>
</dependency>

Stay tuned for more updates, and don’t forget to share your feedback with us!

Full changelog available here: 👉 GitHub Release Notes 8.4.0

The JobRunr Blog

Everything you need to know about
background processing

Explore technical deep-dives, product updates, and real-world examples to help you build, scale, and monitor your Java background jobs.

blog image

November 5, 2022

Oooh, the irony

A crime scene investigation on what went wrong with JobRunr when Daylight Saving Time ended.

Read More Details
blog image

October 3, 2022

JobRunr v5.3.0

Support for Spring Boot 3.0.0 and Kotlin 1.7.20

Read More Details
blog image

April 11, 2025

How JobRunr Builds Software That Gives Back to the Planet

At JobRunr, we believe building great software shouldn’t come at the cost of the planet. Here’s how we’re using our profits, and platform to leave the world better than we found it.

Read More Details
call to action

Try JobRunr yourself, no install required

Walk through 21 hands-on scenarios in our hosted demo and feel how JobRunr handles real-world workflows. Open it in your browser, no setup, no signup.

Launch the interactive demo