マルチファイルソースランチャー
明示的なコンパイル手順なしにマルチファイルプログラムを起動する。
コード比較
✕ Java 8
$ javac *.java $ java Main // Must compile all files first // Need a build tool for dependencies
✓ Java 22+
$ java Main.java // Automatically finds and compiles // other source files referenced // by Main.java
このコードに問題がありますか? お知らせください。
モダンな方法が優れている理由
ゼロセットアップ
小規模なマルチファイルプログラムにビルドツールは不要です。
自動解決
参照されたクラスが自動的に検出・コンパイルされます。
スクリプト風
マルチファイルプログラムをスクリプトのように実行できます。
旧来のアプローチ
事前に全ファイルをコンパイル
モダンなアプローチ
ソースランチャー
JDKバージョン
22
難易度
中級
JDKサポート
マルチファイルソースランチャー
利用可能
JDK 22(2024年3月)以降、利用可能
仕組み
Java 22以降は.javaファイルから起動する際、参照されている他のソースファイルを自動的に検索してコンパイルします。小規模なマルチファイルプログラムをMavenやGradleなしにスクリプトのように実行できます。
関連ドキュメント