For those who did not come across Eclipse MicroProfile yet, let me give you a quick introduction. In 2016, a group of vendors and individuals started an initiative to optimize Enterprise Java for a microservices architecture.
It builds on top of a few Java EE specifications, CDI and JAX-RS mainly, and defines some specifications towards resilience, distributed, reactive and serviceability. Maybe specification is a too heavily weighted word - but there are some standards described so an application can run on any of the runtimes which are provided by the vendors.
Although most vendors already have an online tool of some sort to generate a project that incorporates MicroProfile, the MicroProfile Starter has additional features:
- It is not geared towards a runtime of a specific vendor. This will strengthen the image that MicroProfile is a collaborative initiative. It also highlights the standardization factor, that a MicroProfile-based application can be used on any of the implementations.
- It also generates examples for the specifications, getting you a quick start in the process of learning the features of each of these specifications.
So, the MicroProfile Starter is a good starting place if you want to learn some of the features within one of the specifications.
Using the Starter
- Visit start.microprofile.io.
- Enter your groupID and artifactID into the text boxes (or leave default values).
- Choose MicroProfile version from the drop-down menu.
- The server implementations available for the chosen MicroProfile version will appear in the MicroProfile Server drop-down menu. If you don’t see an implementation you would like to use, try selecting a different MicroProfile version.
- Choose your Bean Discovery Mode (or leave default value).
- Check the boxes for the specifications for which you want to receive code examples.
- Click the download button to save the generated zipped file.
The tool is marked as Beta for the moment but works just fine, The "Beta" notation is there since the application will evolve and expand in the future. Some of the things you will see in later versions include:
- More examples of the different specifications.
- Support for Gradle.
- Other ideas from the community which you can submit on the Github issue page.
And of course, the tool will also incorporate the new versions, runtimes, and specifications when they become available.
We hope that the MicroProfile Starter application will be the ideal starting point for your journey with MicroProfile. Give it a try - Payara Micro is included as a MicroProfile Server for most MicroProfile versions - and keep an eye on the tool for the future enhancements.
Not using Payara Micro yet? Get started here: