AOTクラスプリロード
クラスのロードとコンパイルをキャッシュして即時起動を実現する。
コード比較
✕ Java 8
// Every startup: // - Load 10,000+ classes // - Verify bytecode // - JIT compile hot paths // Startup: 2-5 seconds
✓ Java 25
// Training run:
$ java -XX:AOTCacheOutput=app.aot \
-cp app.jar com.App
// Production:
$ java -XX:AOTCache=app.aot \
-cp app.jar com.App
このコードに問題がありますか? お知らせください。
モダンな方法が優れている理由
高速起動
クラスのロード・検証・リンクをスキップできます。
キャッシュ済み状態
トレーニング実行で理想的なクラス状態をキャプチャします。
コード変更不要
既存のアプリケーションにJVMフラグを追加するだけで動作します。
旧来のアプローチ
毎回コールドスタート
モダンなアプローチ
AOTキャッシュ
JDKバージョン
25
難易度
上級
JDKサポート
AOTクラスプリロード
利用可能
JDK 25 LTS(JEP 514/515、2025年9月)で標準機能として利用可能
仕組み
AOTクラスプリロードはトレーニング実行からロード・リンク済みのクラスをキャッシュします。次回の起動時にはキャッシュからクラスを読み込み、検証とリンクをスキップします。AOTコンパイルと組み合わせると起動時間を大幅に削減できます。
関連ドキュメント