此版本仍在开发中,尚未视为稳定版。如需最新稳定版本,请使用 Spring Boot 4.0.4spring-doc.cadn.net.cn

AOT 缓存

本节包含有关在 Spring Boot 应用程序中使用 AOT 缓存的信息。 有关 Spring Boot 对 AOT 缓存支持的概述,请参阅 AOT 缓存spring-doc.cadn.net.cn

使用 AOT 缓存和 Buildpacks 打包应用程序

Spring Boot 对云原生 Buildpacks的支持,结合Paketo Java buildpack及其Spring Boot 支持,可用于生成包含经过 AOT 缓存优化的应用程序的 Docker 镜像。spring-doc.cadn.net.cn

要在生成的 Docker 镜像中启用 AOT 缓存,您必须使用 Java 25 或更高版本,并且在构建镜像时需将 buildpack 环境变量 BP_JVM_AOTCACHE_ENABLED 设置为 true,具体方法请参见 Maven 插件Gradle 插件 的文档。 这将使 buildpack 对应用程序执行一次训练运行,将 AOT 缓存保存到镜像中,并在启动应用程序时使用该 AOT 缓存。spring-doc.cadn.net.cn

Paketo Spring Boot 构建包的文档中包含了其他可通过构建器环境变量启用的配置选项信息,例如 TRAINING_RUN_JAVA_TOOL_OPTIONS,该变量允许仅在 AOT 缓存训练运行期间覆盖默认的 JAVA_TOOL_OPTIONSspring-doc.cadn.net.cn

使用 AOT 缓存和 Dockerfile 打包应用程序

如果你不想使用云原生构建包(Cloud Native Buildpacks),也可以在 Dockerfile 中使用 AOT 缓存(或 CDS)。 有关更多信息,请参阅Dockerfiles 参考文档spring-doc.cadn.net.cn

防止在训练运行期间远程服务交互

在执行训练运行时,可能需要自定义 Spring Boot 应用程序的配置,以防止在 Spring 生命周期启动之前连接到远程服务。 这种情况通常发生在早期的数据库交互中,可以通过相关的配置来处理——这些配置可默认应用于您的应用程序(或专门用于训练运行),以阻止此类交互。请参阅相关文档spring-doc.cadn.net.cn