back to all blogsSee all blog posts

Dev mode in Open Liberty, and other developer experience enhancements

image of author
YK Chang on Oct 17, 2019
Post available in languages:

We designed Liberty for developers from the start. We recently delivered enhancements to make Open Liberty even better for developers. We simplified our Maven plugin so you can simply pick it up and go, and introduced a development mode that detects and deploys changes on the fly while you are coding. We are now collaborating on an integration test framework so you can write automated true-to-production tests easily.

Easy-to-use Maven plugin

Starting with the recently released version 3.1 of our Liberty Maven plugin, we simplified a bunch of stuff in the plugin so that you only need add the few lines below in your POM file to pick up the plugin and launch into development mode, and then you can write code immediately:

<plugin>
    <groupId>io.openliberty.tools</groupId>
    <artifactId>liberty-maven-plugin</artifactId>
    <version>3.1</version>
</plugin>

Speaking of our development mode…​

Optimised development with dev mode

With the 3.0 release of our Maven plugin, dev mode is now officially part of Open Liberty (see a demo).

With the plugin configured, run mvn liberty:dev from your command line, open up your favourite editor and get ready to code. We will handle the rest for you. We will set up and launch the latest version of the runtime, detect changes on the fly and deploy them, and run unit and integration tests on demand or right away …​ we will do all these and sweat the details for you so you can focus on your code.

Some of these capabilities, like dynamic updates, are not actually new for Liberty, we’ve always done them. But now, we are putting them together in a development mode to provide you an integrated (and delightful) experience.

Oh yes, we have built a VS Code extension for dev mode too.

Going beyond Open Liberty…​

Easy and true-to-production integration tests with MicroShed Testing

We all know that testing is important. But it’s often easier said than done, especially with automated integration tests that reflect the production environment. MicroShed Testing is meant to address this. Using containers (with Testcontainers library), we want to make it as easy as possible for you to configure the needed test dependencies (like a database or a remote service) and write tests that are true-to-production for the microservices that you are developing with MicroProfile, Java EE, or Jakarta EE.

MicroShed Testing is still in its early stages. Take a look at the 0.4 release and share your thoughts with us.

As an aside, MicroShed - what is it?

MicroShed community projects

MicroShed is a new GitHub organization where we are collaborating with the community on developer tools for building Java microservices. For instance, we worked with the MicroProfile community to build a VS Code extension for MicroProfile Starter. It is an open community for collaboration. Everybody is welcome so join us there!

Let us know what you think

From building, to coding, to testing, there you have it. We will write more about these enhancements in the coming days. Check them out and let us know what you think, we value your feedback.

Tap us up on Gitter, or file issues and send us pull requests on GitHub:

Don’t wait, come and catch a ride to an open cloud-nine universe with us now!