MicroProfile CommunityQuarkus

Quarkus MicroProfile Cheat Sheet

By April 22, 2019 No Comments

This stackoverflow question on MicroProfile support in Quarkus pointed out the need for a one-pager cheat-sheet on Quarkus MicroProfile support.

MicroProfile is a collection of specifications. SmallRye is a project that implements MicroProfile specifications. Generally speaking, there is a SmallRye GitHub repo in support of each specification. Quarkus implements MicroProfile specifications using SmallRye’s implementations, which is the reason behind “smallrye” in some of the maven artifact names. Quarkus is still Beta as of this writing, so there may still be some compatibility issues.

As an example, you can run the following to add maven dependencies to your project’s pom.xml using the provided maven GAV (minus the version) in the table. The list is comma-separated.

mvn quarkus:add-extension -Dextensions="io.quarkus:quarkus-smallrye-metrics,io.quarkus:quarkus-smallrye-health"


Here is a quick mapping:

MicroProfile Specification
Quarkus Dependency (Maven group:artifact)
Developer Guide
CDI
io.quarkus:quarkus-arc
JAX-RS
io.quarkus:quarkus-resteasy
JSON-P
io.quarkus:quarkus-jsonp
JSON-B
io.quarkus:quarkus-jsonb
Config
N/A. Included by default
Rest Client
io.quarkus:quarkus-smallrye-rest-client
Fault Tolerance
io.quarkus:quarkus-smallrye-fault-tolerance
Health Check
io.quarkus:quarkus-smallrye-health
Metrics
io.quarkus:quarkus-smallrye-metrics
JWT Security
io.quarkus:quarkus-smallrye-jwt
OpenAPI
io.quarkus:quarkus-smallrye-openapi
OpenTracing
io.quarkus:quarkus-smallrye-opentracing
Reactive Streams Operators
io.quarkus:quarkus-smallrye-reactive-streams-operators
Reactive Messaging (Draft)
io.quarkus:quarkus-smallrye-reactive-messaging
John Clingan

Author John Clingan

John Clingan is a Senior Principal Product Manager in Red Hat Middleware focusing on next-generation platforms. He is also an Eclipse MicroProfile co-founder and committer. Prior to Red Hat John spent 8 years as the GlassFish and Java EE product manager at Oracle and Sun Microsystems. John has 30 years of industry experience (he's kinda old) including software development, technical sales and consulting, and product management. John is a co-founder of and committer on Eclipse MicroProfile. He also has 10+ years of experience teaching Cal State and University of California Extension Java courses to intellectually hungry Java students.

More posts by John Clingan

Leave a Reply