Compatible Java Environments
The following tables provide information on the recommended Java Environment to use with your Talend product from February 2025 and later. If you are using Talend 8.0 products that were not patched nor updated with the February 2025 updates or later ones, see Compatible Java Environment before February 2025.
The supported Java platforms are OpenJDK and Oracle JDK. The recommended distribution for OpenJDK is Zulu.
In the following documentation:
- Recommended: designates an environment recommended by Qlik based on experience and customer usage.
- Supported: designates a supported environment for use with the listed component or service.
- Supported with limitations: designates an environment that is supported by Qlik but with certain conditions explained in notes.
Supported Java versions for launching Talend Studio
| Java version (OpenJDK or Oracle JDK) | Support type |
|---|---|
| 21 | Supported |
| 17 | Recommended |
Supported Java versions for launching Talend Server modules
| Talend Server Module | Java version (OpenJDK or Oracle JDK) | Support type |
|---|---|---|
|
|
Supported |
|
|
Supported |
|
|
Supported Recommended |
|
|
Supported |
# export modules
export JAVA_OPTS="$JAVA_OPTS --add-opens=java.base/sun.security.x509=ALL-UNNAMED --add-opens=java.base/sun.security.pkcs=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/sun.security.action=ALL-UNNAMED -Dorg.talend.remote.jobserver.client.old=false"JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --add-opens=java.xml/com.sun.org.apache.xml.internal.serialize=ALL-UNNAMED"Supported Java versions for running Routes, Data Integration Jobs, and Data Service Jobs
- Data integration Jobs and Routes are built with Java 17 compliance.
- Big Data Jobs are built with Java 8 compliance and with the add-opens parameters automatically included. Therefore, they can be executed with Java 17 in Talend modules, and with Java 8 in a big data cluster. In other words, the Job is launched with Java 17, then deployed in the cluster that runs in Java 8.
- Third-party libraries that use Java 21 are not supported.
The following tables show in which Java environments the corresponding items can be executed.
| Java version for execution | Support type |
|---|---|
| 21 | Supported in Talend Studio |
| 17 | Supported Note that Routines compliance can be set up to Java 8 or 17. |
| Java version for execution | Support type |
|---|---|
| 21 | Supported in Talend Studio |
| 17 | Supported |
Supported Java versions for running Big Data Jobs in Big Data clusters
Big Data Jobs are built with Java 8 compliance in Talend Studio. The built artifacts include add-opens parameters to ensure compatibility with Java 17 runtimes in Talend environments. However, when deployed to a big data cluster, the Job executes with the Java version running on that cluster, not with the build Java version.
This build-once, run-anywhere model allows you to compile a Job once in Talend Studio with Java 8 compliance and deploy it to clusters running different Java versions. However, you must ensure the target cluster Java version is compatible with your Job's Routines.
Routines compliance can be set up to Java 8 or 17. The Routines compliance level must be compatible with the cluster's Java version. For more information, see Setting up the Java version for Routines in Talend Studio.
The following table shows recommended distributions and the Java versions they support for running Big Data Jobs and Spark applications. Choose the cluster distribution and Java version that matches your environment and Routines compliance level.
| Distribution | Java version in cluster | Recommended Routines compliance | Support status |
|---|---|---|---|
| Hadoop 3.x | 8 | Java 8 | Supported |
| Hadoop 3.x | 11 | Java 8 or 11 | Supported |
| Cloudera CDH 6.x | 8 | Java 8 | Supported |
| Cloudera CDH 6.x | 11 | Java 8 or 11 | Supported |
| Spark 3.x (standalone cluster) | 8 or 11 | Java 8 or 11 | Supported |
| Spark Structured Streaming | 17 | Java 17 | Supported Note that Spark Structured Streaming requires Java 17 in the cluster. Ensure your Routines are compiled with Java 17 compliance before deploying to these environments. |
Big Data Jobs execution compatibility examples
The following table shows example scenarios of Big Data Job deployment to different cluster environments.
| Cluster distribution | Cluster Java version | Routines compliance | Can execute? |
|---|---|---|---|
| Hadoop 3.x | 8 | Java 8 | Yes |
| Hadoop 3.x | 11 | Java 8 | Yes |
| Cloudera CDH 6.x | 11 | Java 17 | No – Cluster does not support Java 17 |
| Spark Structured Streaming | 17 | Java 17 | Yes |
| Spark Structured Streaming | 17 | Java 8 | No – Routines not compatible with cluster Java 17 |