JMeter runs inside a Java virtual machine, so an incompatible runtime can stop the launcher before a test plan opens or starts. Checking the runtime first separates Java compatibility problems from JMeter configuration, plugins, or test-plan errors.
Apache JMeter 5.6.3 requires Java 8 or newer. A JRE can run normal tests, while some tasks such as HTTPS recording need a JDK because the launcher may need utilities such as keytool.
The shell that starts JMeter matters because PATH, JAVA_HOME, and JRE_HOME can point different terminals, desktop shortcuts, or CI jobs at different Java installations. Confirm the runtime from the same account and execution environment that will launch JMeter.
Related: How to install JMeter on Ubuntu
Related: How to install JMeter on macOS
Related: How to run a JMeter test from the command line
Steps to check the Java runtime for JMeter:
- Open a terminal in the same user environment that will run JMeter.
For CI or scheduled jobs, run the checks from the job shell, runner image, or service account rather than a separate administrator login.
- Print the active Java version.
$ java -version openjdk version "21.0.11" 2026-04-21 OpenJDK Runtime Environment (build 21.0.11+10-1-26.04.2-Ubuntu) OpenJDK 64-Bit Server VM (build 21.0.11+10-1-26.04.2-Ubuntu, mixed mode, sharing)
Apache JMeter 5.6.3 requires Java 8 or newer. Java 8 output can start with 1.8.0; Java 9 and newer normally start with the major version, such as 21.0.11.
- Check whether JMeter launcher override variables are set.
$ printenv JAVA_HOME JRE_HOME
No output means neither variable is set in this shell. If either variable prints a path, check that it points to a compatible Java runtime before using this shell for JMeter.
- Locate the fallback Java binary on the shell PATH.
$ command -v java /usr/bin/java
When JAVA_HOME and JRE_HOME are unset, the launcher tries to infer a Java location. A different path here can explain why one terminal starts JMeter and another fails.
- Start JMeter under the same shell environment.
$ jmeter --version _ ____ _ ____ _ _ _____ _ __ __ _____ _____ _____ ____ ##### snipped ##### /_/ \_\_| /_/ \_\____|_| |_|_____| \___/|_| |_|_____| |_| |_____|_| \_\ 5.6.3 Copyright (c) 1999-2024 The Apache Software FoundationUse the full launcher path, such as /opt/apache-jmeter-5.6.3/bin/jmeter, if jmeter is not on PATH. Package-scanning warnings can appear before the banner; UnsupportedClassVersionError or class-file-version output points back to the Java runtime.
Mohd Shakir Zakaria is a cloud architect with deep roots in software development and open-source advocacy. Certified in AWS, Red Hat, VMware, ITIL, and Linux, he specializes in designing and managing robust cloud and on-premises infrastructures.