Setting up compatible Java versions for Talend JobServer to run Jobs
Configure your JobServer to execute Jobs using the appropriate Java version based on those Jobs' Java compatibility levels.
By default, a Talend JobServer uses the Java version of its environment to execute Jobs. Therefore, if you skip this section, Talend JobServer defaults to Java 17.
- Recommended for JobServer instances starting from 8.0.2.20250129_0823_patch (released in R2025-01): from that release, a dynamic JVM selection mode has been added to automatically adapt the server to the correct Java version to run Jobs. See Adaptive mode: Configuring Talend JobServer to dynamically select Java version.
- If your JobServer version is older and you cannot upgrade it to the latest version, follow this procedure to specify the Java version to be used for executions. This approach is not dynamic and only one version can be specified. See Configuring the JVM for your Talend JobServer.
Adaptive mode: Configuring Talend JobServer to dynamically select Java version
In this mode, Talend JobServer automatically selects the appropriate Java instance based on the Java compatibility level of the Job to be executed.
This dynamic Java version (adaptive) mode helps you execute Jobs from different Studio versions without rebuilding.
- For further information about setting this level, see Setting compiler compliance level.
- For information about how the compatible Java versions evolve along with Studio versions, see Compatible Java environments.
Procedure
Typical use cases for the adaptive mode
- Jobs built to run on Java 8:
These Jobs are compiled with the Java 8 compliance level and does not include --add-opens (the Enable Java 17 compatibility checkbox is not selected). They are generally compatible with Java 11. Setting both Java 8 and 11 or setting Java 11 alone in adaptive mode ensures they run correctly.
Information noteTip: Java 8 does not support --add-opens. - Standard (data integration) Jobs built to run on Java
11:
These Jobs are compiled with the Java 8 compliance level and include --add-opens where needed (the Enable Java 17 compatibility checkbox is selected).
They are generally compatible with Java 11. Running them on Java 17 are possible but can be error-prone, as --add-opens may lack necessary modules for Java 17 to correctly work.
Setting Java 11 in adaptive mode allows it to handle these Jobs.
- Jobs built to run on Java 17:
These Jobs are compiled with the Java 17 compliance level. They run on the Java 17 instance set in adaptive mode or, if unset, on the server’s default Java instance.
What to do next
Configuring the JVM for your Talend JobServer
About this task
To achieve the same results with Talend JobServer installed as a service, see Installing Talend JobServer as a service on Windows.
Procedure
Results
-
Go to the directory <root>/conf/, where <root> is the Talend JobServer path, and open the TalendJobServer.properties file to edit it.
- In the line dedicated to the Job launcher path, add the path to your Java
executable after the equal sign.
# Set the executable path of the binary which will run the job, for example: /usr/bin/java/java or "c:\\Program Files\\Java\\bin\\java.exe" org.talend.remote.jobserver.commons.config.JobServerConfiguration.JOB_LAUNCHER_PATH="C:\\Program Files\\Java\\jdk11.0.13\\bin\\java.exe"
The use of quotes is only necessary when your path contains spaces, as shown in the capture. Otherwise, enter the path without quotes.