使用 JVM 進行提前處理

使用 AOT 生成的初始化程式碼執行應用有利於啟動時間。首先,你需要確保你構建的 JAR 包包含 AOT 生成的程式碼。

CDS 和 AOT 可以結合使用,進一步縮短啟動時間。

對於 Maven,這意味著你應該使用 -Pnative 進行構建以啟用 native profile

$ mvn -Pnative package

對於 Gradle,你需要確保你的構建包含 org.springframework.boot.aot 外掛。

構建 JAR 包後,使用 spring.aot.enabled 系統屬性設為 true 來執行它。例如

$ java -Dspring.aot.enabled=true -jar myapplication.jar

........ Starting AOT-processed MyApplication ...

請注意,使用提前處理存在缺點。它意味著以下限制:

  • 類路徑在構建時固定且完全定義

  • 應用中定義的 Bean 在執行時不能改變,這意味著

要了解更多關於提前處理的資訊,請參閱瞭解 Spring 提前處理 一節。