Jmix 3.0: Spring Boot 4, Java 21 and What to Expect
Jmix 3.0 is scheduled to ship in June 2026, making this the most significant framework upgrade since the 2.x line launched. The release is a technology-stack modernisation rather than a feature drop—every major dependency moves to a new major version at once.
What is changing
Spring Boot 4
The biggest underlying shift is the move from Spring Boot 3.x to Spring Boot 4. Spring Boot 4 requires Java 21 as a minimum and drops a number of legacy APIs that Spring Boot 3 still carried for backwards compatibility. For most Jmix applications this means updating your build.gradle Spring Boot plugin version and resolving any deprecated API usages that were suppressed under 3.x.
Vaadin 25
The Jmix UI layer is built on Vaadin's Flow framework, and Vaadin 25 is a breaking release on its own. The main areas that affect Jmix applications are component API changes in form layouts and data binding. The Jmix team has been tracking Vaadin 25 compatibility internally and reports the migration from 2.8 will be comparable in effort to a 2.7-to-2.8 upgrade—significant but well-understood.
// Example: Vaadin 25 changes how BeanValidationBinder initialises
BeanValidationBinder<Customer> binder = new BeanValidationBinder<>(Customer.class);
// setRequiredIndicatorVisible() renamed to setAriaRequiredIndicatorVisible()
binder.forField(nameField).asRequired().bind(Customer::getName, Customer::setName);
EclipseLink 5
The JPA provider moves from EclipseLink 4.x to 5.x. EclipseLink 5 requires Jakarta EE 11, which aligns with what Spring Boot 4 expects. Named query syntax and entity-listener callbacks remain unchanged for the vast majority of applications.
Flowable 8
The BPM engine bundled with Jmix's BPM add-on upgrades from Flowable 7 to Flowable 8. Flowable 8 changes how process definitions are parsed and stored, so if you use the BPM add-on you will need to check the Flowable migration notes for your process XML files.
Java 21 minimum
Java 21 is now required. It has been the LTS release since September 2023 and most production environments have already adopted it. The main practical change is that if you were still running Java 17 you need to upgrade your JDK and CI images before attempting a Jmix 3.0 migration.
Why 2.8 matters before you upgrade
Jmix 2.8, released in March 2026, is a long-term support release with three years of free maintenance. If you are not ready to absorb the 3.0 stack changes immediately, staying on 2.8 is the right call. The Jmix team explicitly released 2.8 LTS as a stable landing pad ahead of the 3.0 breakage.
Key 2.8 additions you get while waiting for 3.0:
.envfile support for externalized configuration- SAML add-on for enterprise SSO via Entra ID, Okta, and Keycloak
@ElementCollectionsupport for basic values andFileReftypessidePanelLayoutcomponent for collapsible side panels- Data Tools add-on with PlantUML entity diagram generation
Migration path
The team's stated position is that upgrading from 2.8 to 3.0 will follow the same pattern as any previous feature release migration. The official migration guide has not been published yet—it will ship alongside the stable 3.0 packages. The high-level checklist to prepare your project now:
- Upgrade to Java 21 if you have not already done so
- Audit deprecated Spring Boot 3 APIs in your application code—
spring-boot-3-deprecationsreports them at compile time - Check Vaadin 25 release notes for any components you use directly via
@JsModuleor Vaadin add-ons - Review Flowable 8 migration notes if your project uses the BPM add-on
- Pin Jmix to 2.8 in
gradle.propertiesand wait for the 3.0 migration guide before upgrading
What comes after 3.0
The 2026 roadmap signals that 3.0 is the foundation for the next wave of AI-oriented features. Two planned additions that depend on the 3.0 stack:
- Text-to-UI Builder — natural-language instructions that modify UI layouts directly in the project source via Jmix Studio dev mode
- Text-to-Data add-on — LLM tool-calling over your JPA data model through the Jmix
DataManagerAPI, for use in chat interfaces and BPM forms
Neither is shipping in 3.0 itself; they are in the roadmap for subsequent feature releases once the Spring Boot 4 baseline is stable.
Jmix 3.0 has been delayed once already (from February to June) because Flowable 8 and EclipseLink 5 were not ready. If you want to track the actual release date, watch the Jmix forum announcements and the GitHub releases page. The safest upgrade path is to stay on 2.8 LTS, run through the checklist above, and apply the official migration guide as soon as it publishes.