Eclipse MicroProfile

The Eclipse MicroProfile project has been evolving over the last few years, but only in the last month or so have I started taking a proper look into it.

The mission of the project is described to provide:

An open forum to optimize Enterprise Java for a microservices architecture by innovating across multiple implementations and collaborating on common areas of interest with a goal of standardization.

The collection of framework specifications which are included in this standard, when used along with JAX-RS, provides the pieces required to build applications in a modern “microservices” architecture, while leaving behind more legacy aspects (and bloat) of the Java EE specification.


For starting with MicroPofile developments a “starter” wizard is available to quickly generate Maven projects for your chosen target specification and application server version. One of the options which differentiate this from the traditional Maven archetype approach is it provides options to include sample code for the different specification versions. The README document in the generated project Zip file is a good place to get started as it contains links to the documentation on the different specification areas.

The Experiment Project

As well as writing up some details of what I am learning as part of going through this standard, I will be committing the code that I am creating in my microprofile-experiments repository.

For my experiments with MicroProfile, I’ll be targeting the latest version of the specification available for Payara Micro at the time of writing (MP 2.2). MicroProfile 3 support is due in Payara later this month.


The first MicroProfile feature I will be delving in to is going to the MicroProfile Configuration Feature, and how it can be used with CDI to work with feature toggles. As part of this series there will be posts which are more generally on Maven, as the build system I have the most experience with is Ant and I have a lot to learn about how to make the most of Maven.