JavaにJavaScriptエンジン「V8」とPythonランタイム「CPython」を組み込む「Project Detroit」、オラクルが発表
オラクルは、カリフォルニア州レッドウッドシティで開幕したイベント「JavaOne 2026」で、「Project Detroit」(以下、Detroit)をOpenJDKのプロジェクトプロポーザル(プロジェクト提案)として発表しました。

DetroitはJavaにJavaScriptエンジンの「V8」とPythonランタイムの「CPython」を組み込むことで、JavaとJavaScript、Pythonの相互運用性を高めることを目的としています。

Detrotの概要について、オラクル提供の資料から一部を引用Detroitは、JavaにJavaScriptのスクリプトエンジンを組み込む目的で2018年にプロジェクトが始まったものの実装に至らず、2019年に中止となっていました。
それが今回、JavaもしくはJavaVM言語と他言語との相互運用性へのニーズが高まってきたことを背景に、JavaScriptとPythonをサポートするプロジェクトとして再開が提案されることになりました。
V8とCPythonのソースコードを組み込む
Detroitの実装はJavaScriptエンジンのV8のソースコードと、PythonのC言語によるリファレンス実装であるCPythonのソースコードをJavaに組み込むことを想定していると説明されています。
これによりJavaScriptおよびPythonの言語の互換性を完全に保てると同時に、各ランタイムのソースコードのメンテナンスはそれぞれのコミュニティに任せることができます。
また、Javaとそれぞれのランタイムはヒープ実行を分離することでセキュリティを確保しつつ、JavaのScriptEngineAPIでそれぞれの言語を利用可能にする予定です。
将来的にはJavaScriptとPython以外の言語にも対応を広げる可能性があるとしています。
Javaと他言語の相互運用によるメリットとは
JavaScriptは非常に多くの優れたWebアプリケーションのUIフレームワークが多数存在します。JavaのバックエンドとJavaScriptのUIフレームワークとの組み合わせが容易になれば、開発者の生産性向上に役立つはずです。
一方Pythonには多数のAIや機械学習のフレームワークやライブラリが存在するため、Javaとこれらの機能との相互運用性が高まれば、JavaからさまざまなAIや機械学習の機能の呼び出しが容易になるでしょう。
こうしたJavaと複数のプログラミング言語の相互運用性に関しては、以前は多言語対応の実行環境を提供するGraalVMに期待されていたものでした。
しかしGraalVMは2025年9月にJava以外の言語のランタイムに注力し、Javaのバージョンアップには必ずしも追随しない方針を発表しています。
参考:GraalVMは今後Javaとは独立してバージョンアップへ。Java以外のPythonやJavaScriptに注力する方針を発表
Javaによる他言語との相互運用性を目指すDetroitの再始動には、こうしたGraalVMの方針変更が影響していたと言えそうです。
