Release of Jmix 1.0

Hi everyone,

We are excited to inform you that the long-awaited stable release of the Jmix framework and Studio is finally out!

Fireworks

Getting started

To start working with Jmix, do the following:

  • Download and install the IntelliJ IDEA 2021.1 (Community edition is enough) from the JetBrains site.
  • Start IntelliJ IDEA.
  • Install the Jmix plugin into the IDE. It can be done through the Settings -> Plugins dialog or just by clicking a button on this page.

Check out the corresponding documentation page for the system requirements and additional installation details.

Learn Jmix using the following resources:

What’s new in 1.0

The most important changes implemented in Jmix since 0.9 beta are listed below.

New implemented add-ons are available on the Marketplace:

  • Multitenancy
  • LDAP
  • Search
  • Reports
  • Grid export actions

Translations:

  • German
  • Russian
  • Simplified Chinese

Updated core libraries:

  • Gradle 7.0
  • Spring Boot 2.5.1

Notable new features:

All improvements and fixes:

Migrating from 0.9 beta

To be able to upgrade your existing projects and use Jmix 1.0, you need to update your Jmix plugin to the 1.0.0 version using the Settings -> Plugins dialog in the IDE.
Note that unlike beta versions, Jmix 1.0.0 requires the latest IntelliJ IDEA version - 2021.1.

Unfortunately, Jmix plugin 1.0 isn’t fully compatible with the Jmix framework 0.9 (mostly in the area of screen designer), so we recommend you to migrate your projects to Jmix 1.0.0 as soon as possible.
Migration instructions are presented here: https://docs.jmix.io/jmix/1.0/whats-new/index.html#upgrade-from-0.9

Licensing

Jmix Studio 1.0.0 requires active subscription in order to use visual designers for convenient work with entities, screens, fetch plans, and roles.

A trial subscription can be requested once by every new user. It allows a developer to evaluate full capabilities of the Studio for 28 days.
Commercial subscription can be purchased in Jmix Store: https://www.jmix.io/store/#/store/studio

Read more in the documentation: https://docs.jmix.io/jmix/1.0/studio/subscription.html

Migration from CUBA

We are aware that many CUBA platform users are eager to upgrade the techlonogical foundation of their projects. Don’t worry, we will provide a migration path and help in the Studio.
For backward compatibility purposes, we have introduced a jmix-cuba module. This module contains most of the APIs implemented in CUBA. So, you won’t need to change your code much in order to migrate to the next framework version. The compatibility module will be added automatically to your application during migration.

Support of the automated migration of the CUBA project to Jmix in the Jmix Studio is currently in development. It will be ready for the next Jmix release - 1.1 (planned for October). Additionally we will publish the instruction describing various aspects one needs to consider when migrating.


Happy coding with the new framework and Studio!
And as always, we are looking forward to your feedback!

11 Likes

Hi, I have a jmix 0.9 app on windows machine. I updated intelij ideea and started the migration steps as you mantioned. When opening terminal and run gradlew it doesn’t find any gradlew bat file. I found one on internet and when running i get “Could not find or load main class org.gradle.wrapper.GradleWrapperMain”.

The next error is on loginscreen.java
import io.jmix.securityui.authentication.LoginScreenSupport;
LoginScreenSupport - cannot resove symbol

Other one is in main-screen.xml
, element resource is not allowed …e

  •                     <theme path="branding/app-icon-menu.svg"/>
                     </resource>

Hi,

Well, there should be one, in any Jmix project.

E.g. here you can see gradlew and gradlew.bat in the root folder of the project:

Maybe you forgot to invoke Gradle → Re-import Gradle Project in the Jmix tool window after changing jmix version to 1.0.0 in the build.gradle file?

I’ve copied the 2 files gradlew.bat and gradle in the root directory (there was no one of them in my root directory but my 0.9 jmix app runs)
Still when i try to migrate running from terminal “gradlew wrapper --gradle-version=7.0.2” got same error “Could not find or load main class org.gradle.wrapper.GradleWrapperMain”.
Do you know any workaround ?

Probably your project structure is damaged.
To avoid problems in the future with this project, I would advise you to migrate the content of your beta project from scratch.

  • Create new project in Jmix Studio with the same project name and project id, using Jmix 1.0.0.
  • Manually copy all java sources and resources from 0.9 project to the same folders in the new empty project: entities, screens, beans, message pack etc.