Skip to content

Supported Java Versions

QIE is a Java application and runs inside a Java Runtime Environment on the server. The JRE is the one prerequisite QIE cannot install itself on every platform, so it is worth getting right before you start.

The requirement

Version Java Runtime Environment (JRE) 17 or newer
Architecture 64-bit

64-bit is not optional in practice

A 32-bit JVM is capped at about 1.2 GB of heap. Since QIE loads each message fully into the heap (and holds more than one copy of it while a message moves between receiver and processor) a 32-bit JVM fail on messages a 64-bit one handles comfortably. See the sizing note in System Requirements.

Supported distributions

Java 17 is a standard, and several vendors build it. QIE is supported on:

  • OpenJDK: the reference build, and what most Linux distributions package.
  • Amazon Corretto: Amazon's free, long-term-supported OpenJDK build. This is the one the Windows installer offers.
  • Oracle Java: supported, but check Oracle's licensing terms for your use; the other two are free for commercial use.

Any of the three is fine. Where you have no existing standard, Amazon Corretto is the path of least resistance because it is what the Windows installer fetches and what Qvera tests against most.

Installing it

Windows. The QIE installer prompts you to install a JRE or point at an existing one. Taking the offered option installs Amazon Corretto, downloaded from https://www.qvera.com/getjava/windows.

Linux. Install the distribution's OpenJDK package, or download Corretto or Oracle Java manually:

sudo apt install openjdk-17-jdk

macOS. Install via Homebrew:

brew install openjdk@17

Containers. The official QIE images already contain a suitable JRE, so there is nothing to install. See the Container Guide.

Pointing QIE at a specific JRE

Where a server has more than one Java installed, QIE uses the one configured for its service rather than whatever java resolves to on your shell path. On Windows that is set in the Service Manager; on Linux it is the launcher invocation in the service unit or start script.

This is worth checking when QIE fails to start on a machine where java -version looks correct. The service and your shell can easily disagree.