liveBook · Manning

Quarkus dev mode

As explained in Quarkus in Action

Quarkus dev mode is a Quarkus development mode that provides rapid code-change feedback without restarting the application.

Quarkus dev mode keeps an application running while you edit it. Save a code or configuration change, then refresh the browser or send another HTTP request: Quarkus recompiles and reloads the application in the background. This replaces the usual edit–build–restart loop with rapid feedback while developing in Java or Kotlin. section 1.1 section 3.1

Start dev mode from the project directory with `quarkus dev`. For a Maven project, use `./mvnw quarkus:dev`; for Gradle, use `./gradlew --console=plain quarkusDev`. The Quarkus CLI offers the same invocation for either build tool. Unlike running a packaged application, this workflow does not require a manual packaging step before trying a change. section 2.3

Change a REST greeting

Start dev mode, open `http://localhost:8080/hello`, and change the string returned by the REST resource’s `hello()` method. Save the file and refresh the page to see the new greeting. Console messages show that the application stopped and reloaded; pressing `s` in the running terminal can also trigger a reload without an HTTP request. The reload reuses the existing JVM rather than starting a new one. section 3.1.1 section 3.1

A compilation or library-usage error does not end the dev-mode process: HTTP requests receive error details instead of application content. Tests are a separate consideration. Continuous testing can run them automatically in the background, but it must be enabled; without it, the greeting exercise’s existing test runs during a full build and may fail until its expected response is updated. section 3.7 section 3.1.1

Dev mode also provides the running context for Dev UI, which exposes application insights, and Dev Services, which can manage development instances of resources such as databases. These are development aids, not a substitute for packaging and running the application with its production profile. section 3.7 section 2.3

How Quarkus in Action covers it

How deep it goes
Demonstrates startup, request-triggered reload, logs, and error behavior; does not detail reload internals.
Examples
Changes a REST greeting, refreshes `/hello`, and checks reload logs and a potentially failing greeting test.
What it assumes
Assumes a generated Quarkus project and basic command-line and Java editing skills; introduces the reload workflow through a REST resource.
What you can do after
Operate/configure it with Quarkus CLI, Maven, or Gradle commands and inspect live-reload behavior during edits.
How it connects
Links live reload to REST resources, continuous testing, Dev UI, Dev Services, and production packaging.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Quarkus in Action. The section links point to the parts of the book it draws on.