ジョブやマイクロサービスを実行するためのJavaバージョンの設定
最終更新日時: 2026/10/27各アーティファクトのJava互換性レベルに基づいて、適切なJavaバージョンを使ってジョブやマイクロサービスを実行できるようにTalend Remote Engineを設定します。
デフォルトでは、Talend Remote Engineはその環境のJavaバージョンを使ってジョブやマイクロサービスを実行します。Talend Remote Engine v2.13からv2.13.9までは、エンジンの起動にJava 17が必須です。v2.14.0以降、Java 21もエンジン起動に使用できるようになりました。Java 21アーティファクトの実行サポートは、v2.14.2から開始されます。
タスク実行に使用するJavaのバージョンを選択するには、お使いのTalend Remote Engineのバージョンに応じたガイダンスを参照してください。
- v2.14.2以降:アダプティブモードを使用: 動的Java選択(v2.14.2以降)またはアダプティブモード無効: ランタイムの構成に応じて、Javaバージョンの設定(v2.14.2以降)を手動で行います。
- v2.13.9〜v2.14.1: Java 21アーティファクトの実行はサポートされていません。Java 17以前のアーティファクトには、アダプティブモードの動的Java選択(v2.13.9~v2.14.1)を使用してください。Javaのバージョン選択には、アダプティブモードが推奨されます。
- v2.13〜v2.13.8: Java 21アーティファクトの実行はサポートされていません。Java 17以前のアーティファクトについては、Javaバージョンの手動選択(v2.13~v2.13.8)を使用してください。
トラブルシューティング: アダプティブモードを有効にしているにもかかわらず、設定とは異なりJava 21のアーティファクトがJava 21ではなくJava 17で実行され続ける場合は、解決手順について「リモートエンジンでアダプティブモードが有効な場合、Java 21でビルドされたタスクがJava 17で実行される」を参照してください。
アダプティブモードの仕組み
- このレベルの設定に関する詳細は、コンパイラーのコンプライアンスレベルを設定をご覧ください。
- 互換性があるJavaのバージョンがStudioのバージョンと共にどのように進化するかについては、互換性があるJava環境をご覧ください。
アダプティブモードの一般的な使用例
- Java 8で動作するようビルドされたジョブ:
これらのジョブはJava 8のコンプライアンスレベルでコンパイルされ、--add-opensは含まれていません([Enable Java 17 compatibility] (Java 17の互換性を有効化)チェックボックスは選択されていません)。これらは一般的にJava 11と互換性があります。Java 8と11の両方を設定するかJava 11だけを適用モードに設定することで、正しく動作するようになります。
情報メモヒント: Java 8は--add-opensをサポートしていません。 - Java 11で動作するようにビルドされた標準(データ統合)ジョブ:
これらのジョブはJava 8のコンプライアンスレベルでコンパイルされ、--add-opensが含まれています([Enable Java 17 compatibility] (Java 17の互換性を有効化)チェックボックスが選択されています)。
これらは一般的にJava 11と互換性があります。Java17 でこれらを実行することは可能であるものの、Java17での正しい動作に必要なモジュールを--add-opensが持たないことがあるため、エラーが発生しやすくなります。
Java 11を適用モードに設定すれば、これらのジョブを処理できるようになります。
- Java 17で動作するようビルドされたジョブ:
これらのジョブはJava 17のコンプライアンスレベルでコンパイルされています。適用モードに設定されたJava 17インスタンスで実行されるか、未設定の場合はエンジンのデフォルトのJavaインスタンスで実行されます。