This blog was cross-posted from tornadovm.org
This blog updates the previously published TornadoInsight configuration guidelines and explains how to configure the required environment variable to ensure that TornadoInsight correctly detects the TornadoVM SDK when IntelliJ IDEA is launched from a graphical environment.
Overview
TornadoInsight requires access to a compatible Java Development Kit (JDK) and the TornadoVM SDK. We explained in previous blogs the guidelines for installing the TornadoVM SDKs (manually) or via SDKMAN!.
Important update:
Since version v1.4.0, TornadoInsight can also use the JDK configured directly in IntelliJ IDEA via Project Structure. This means that, in many cases, users no longer need to configure the Java SDK in the plugins settings.
JDK Configuration (Recommended)
TornadoInsight supports using the JDK defined in the IntelliJ project settings.
Configure the JDK in IntelliJ IDEA
- Open IntelliJ IDEA
- Go to File → Project Structure
- Select Project under Project Settings
- Set Project SDK to JDK 21 (or another supported JDK version)
- Apply and close the dialog
When a compatible JDK (e.g., JDK 21) is configured here, TornadoInsight will automatically use it.

TornadoVM SDK Configuration (Recommended)
Since version v1.4.2, TornadoInsight requires the environment variable TORNADOVM_HOME to be defined and visible to the IntelliJ IDEA process.
On modern operating systems, GUI applications (such as IntelliJ started from JetBrains Toolbox, the Dock, or an application launcher) do not always inherit shell variables defined in files like:
- ~/.bashrc
- ~/.zshrc
For this reason, TORNADOVM_HOME must be configured using OS-appropriate mechanisms that apply to the graphical session, not only to terminal shells.
To define the TornadoVM SDK path across different Operating Systems, you can use the following guidelines which will enable your IntelliJ session to recognize the TORNADOVM_HOME environment variable as described below.
TORNADOVM_HOME=/absolute/path/to/tornado-sdkmacOS
On macOS, GUI applications do not read ~/.zshrc or ~/.zprofile.
Recommended:
Run the following command in a terminal:
launchctl setenv TORNADOVM_HOME /absolute/path/to/tornado-sdkThen quit IntelliJ IDEA (Cmd + Q) and relaunch it.
Linux
If IntelliJ IDEA is launched from JetBrains Toolbox or a desktop launcher, variables set in ~/.bashrc will not be visible.
Recommended: systemd environment.d
This method works reliably on modern Linux distributions using systemd.
- Create the directory:
mkdir -p ~/.config/environment.d- Create the file:
~/.config/environment.d/tornado.conf- Add the variable (no export):
TORNADOVM_HOME=/absolute/path/to/tornado-sdk- Log out and log back in, then start IntelliJ IDEA
Windows
- Open System Properties
- Navigate to Environment Variables
- Add a User variable:
- Name: TORNADOVM_HOME
- Value: C:\path\to\tornado-sdk
- Restart IntelliJ IDEA
Verification
Before starting IntelliJ IDEA, verify that the variable is set:
macOS / Linux
launchctl getenv TORNADOVM_HOMELinux (systemd check)
systemctl --user show-environment | grep TORNADOVM_HOMEIf the variable is present, TornadoInsight will automatically detect the TornadoVM SDK at startup.
Summary
If TORNADOVM_HOME is not recognized by the IntelliJ process, a warning is shown in the settings of the plugin, as shown in the picture below.

Some common issues are listed here:
- Setting TORNADOVM_HOME only in ~/.bashrc or ~/.zshrc
- Forgetting to log out or restart IntelliJ IDEA
- Using relative paths instead of absolute paths
- Expecting GUI-launched applications to inherit terminal environments
This blog presents some guideline to address these issues across different operating systems.
Useful Links: JetBrains Marketplace: https://plugins.jetbrains.com/plugin/23309-tornadoinsight
GitHub Repository: https://github.com/beehive-lab/tornado-insight
This work has been supported by research funding from the European Union (P2Code, AERO).