How to use Quarkus

Following our release of GraalVM support, I can show you how to use Quarkus on Clever Cloud. Quarkus is a Java framework conceived with GraalVM and cloud/container support in mind. If you want to be a first class citizen in the GraalVM ecosystem, you are expected to produce native binaries. And in a nutshell, it means you will experience issues in Reflection usage because you use AOT compiling instead of JIT.

But thanks to the amazing work of the Quarkus team, this won’t be an issue. They tried to avoid reflection as mush as possible, sometimes contributing code to projects upstream, and made it very easy to use it with AOT compiling when it’s absolutely necessary.

You’ll find more details about the importance of Quarkus on Emmanuel Bernard’s blog post Why Quarkus. Now let’s find a sample to deploy and see how it works. We took the hello world available here: https://github.com/CleverCloud/quarkus-demo

It’s a maven project so to create this on Clever Cloud you use our CLI and run clever create --type maven quarkus-example. Now we need to setup the right environment variables to configure our project:

clever env set CC_JAVA_VERSION graalvm-ce # Select GraalVM as Java version
clever env set CC_MAVEN_PROFILES native # define wich maven profile to use in the default build. Here native mwans it will generate a GraalVM native image.
clever env set CC_RUN_COMMAND target/quarkus-quickstart-1.0-runner # The path to the native image we will run.

We are building a native image and this reauires a decent amount of memory. This means we’ll have to use a dedicated build instance. Open the web console and select the application (or type clever console do to this automatically), click on the Information tab and tick the Enable dedicated build instance box.

Again if you are using our CLI you can type clever deploy and that is it. You now have a Quarkus native image running on Clever Cloud. If this brings you joy please take some time to thank all the Quarkus team for their awesome work! We have been using JEE from the very beginning for many internal things and are super grateful <3.

Blog

À lire également

Azimutt on Clever Cloud: easily view and manage your SQL databases

Simply creating databases is great, but being able to explore, analyze and manage them in a user-friendly interface is even better. With this in mind, we worked with Loïc Knuchel to integrate Azimutt on Clever Cloud.
Company

FrankenPHP, sessions in Materia KV, lifecycle: what will change in PHP on Clever Cloud

Since the first week of the year, we've delivered. There have been many new features on Clever Cloud, some more visible than others.
Company

SuperBOL: The COBOL revolution in the Cloud

COBOL, a programming language that is over 60 years old, continues to power a large proportion of the IT systems of the world's major companies, particularly in the financial and insurance sectors.
Features