此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Boot 3.4.0spring-doc.cadn.net.cn

对其他插件做出反应

当应用另一个插件时, Spring Boot 插件会通过对项目的配置进行各种更改来做出反应。 本节介绍这些更改。spring-doc.cadn.net.cn

对 Java 插件做出反应

当 Gradle 的java插件应用于项目时,Spring Boot 插件:spring-doc.cadn.net.cn

  1. 创建一个BootJar任务名称bootJar这将为项目创建一个可执行的 uber jar。 jar 将包含主源集的运行时 Classpath 上的所有内容;类打包在BOOT-INF/classes和 jar 打包在BOOT-INF/libspring-doc.cadn.net.cn

  2. 配置assembletask 所依赖的bootJar任务。spring-doc.cadn.net.cn

  3. 配置jar要使用的任务plain作为其存档分类器的约定。spring-doc.cadn.net.cn

  4. 创建一个BootBuildImage任务名称bootBuildImage,这将使用 buildpack 创建 OCI 映像。spring-doc.cadn.net.cn

  5. 创建一个BootRun任务名称bootRun,可用于使用mainsource set 来查找其 main 方法并提供其运行时 Classpath。spring-doc.cadn.net.cn

  6. 创建一个名为bootTestRun,可用于使用testsource set 来查找其 main 方法并提供其运行时 Classpath。spring-doc.cadn.net.cn

  7. 创建一个名为bootArchives,其中包含由bootJar任务。spring-doc.cadn.net.cn

  8. 创建一个名为developmentOnly对于仅在开发时需要的依赖项,例如 Spring Boot 的 Devtools,并且不应打包在可执行 jar 和 wars 中。spring-doc.cadn.net.cn

  9. 创建一个名为testAndDevelopmentOnly对于仅在开发时以及编写和运行测试时需要且不应打包在可执行 jar 和 war 中的依赖项。spring-doc.cadn.net.cn

  10. 创建一个名为productionRuntimeClasspath.它相当于runtimeClasspath减去仅出现在developmentOnlytestDevelopmentOnly配置。spring-doc.cadn.net.cn

  11. 配置任何JavaCompile未配置要使用的编码的任务UTF-8.spring-doc.cadn.net.cn

  12. 配置任何JavaCompiletasks 以使用-parameterscompiler 参数。spring-doc.cadn.net.cn

对 Kotlin 插件做出反应

Kotlin 的 Gradle 插件应用于项目时,Spring Boot 插件会:spring-doc.cadn.net.cn

  1. 将 Spring Boot 依赖项管理中使用的 Kotlin 版本与插件版本保持一致。 这是通过设置kotlin.version属性,其值与 Kotlin 插件的版本匹配。spring-doc.cadn.net.cn

  2. 配置任何KotlinCompiletasks 以使用-java-parameterscompiler 参数。spring-doc.cadn.net.cn

对 War 插件的反应

当 Gradle 的war插件应用于项目时,Spring Boot 插件:spring-doc.cadn.net.cn

  1. 创建一个BootWar任务名称bootWar这将为项目创建一个可执行的 FAT WAR。 除了标准包装外,所有providedRuntime配置将打包在WEB-INF/lib-provided.spring-doc.cadn.net.cn

  2. 配置assembletask 所依赖的bootWar任务。spring-doc.cadn.net.cn

  3. 配置war要使用的任务plain作为其存档分类器的约定。spring-doc.cadn.net.cn

  4. 配置bootArchives配置以包含由bootWar任务。spring-doc.cadn.net.cn

对 Dependency Management 插件做出反应

io.spring.dependency-management插件应用于项目时,Spring Boot 插件会自动导入spring-boot-dependenciesbom.spring-doc.cadn.net.cn

对应用程序插件做出反应

当 Gradle 的application插件应用于项目时,Spring Boot 插件:spring-doc.cadn.net.cn

  1. 创建一个CreateStartScripts任务名称bootStartScripts这将创建在bootArchives配置java -jar. 该任务配置为使用applicationDefaultJvmArgsproperty 作为其defaultJvmOpts财产。spring-doc.cadn.net.cn

  2. 创建一个名为boot并将其配置为包含bootArchives配置在其lib目录中的 API 和启动脚本bin目录。spring-doc.cadn.net.cn

  3. 配置bootRuntask 使用mainClassNameproperty 作为其main财产。spring-doc.cadn.net.cn

  4. 配置bootRunbootTestRuntasks 以使用applicationDefaultJvmArgsproperty 作为其jvmArgs财产。spring-doc.cadn.net.cn

  5. 配置bootJartask 使用mainClassName属性作为Start-Class条目。spring-doc.cadn.net.cn

  6. 配置bootWartask 使用mainClassName属性作为Start-Class条目。spring-doc.cadn.net.cn

对 GraalVM Native Image 插件做出反应

GraalVM Native Image 插件应用于项目时,Spring Boot 插件:spring-doc.cadn.net.cn

  1. 应用org.springframework.boot.aot插件:spring-doc.cadn.net.cn

    1. 寄存 器aotaotTest源集。spring-doc.cadn.net.cn

    2. 注册一个ProcessAot任务名称processAot,这将为aotsource set 的spring-doc.cadn.net.cn

    3. aot源集processAot.spring-doc.cadn.net.cn

    4. 注册一个ProcessTestAot任务名称processTestAot,这将为 App 的 Test 生成 AOT 优化源aotTestsource set 的spring-doc.cadn.net.cn

    5. aotTest源集processTestAot.spring-doc.cadn.net.cn

  2. 添加aotsource 设置为mainGraalVM 原生二进制文件。spring-doc.cadn.net.cn

  3. 添加aotTestsource 设置为testGraalVM 原生二进制文件。spring-doc.cadn.net.cn

  4. 配置 GraalVM 扩展以禁用工具链检测。spring-doc.cadn.net.cn

  5. 将每个 GraalVM 原生二进制文件配置为需要 GraalVM 22.3 或更高版本。spring-doc.cadn.net.cn

  6. 配置bootJartask 以包含由collectReachabilityMetadatatask 的 jar 中。spring-doc.cadn.net.cn

  7. 配置bootJartask 添加Spring-Boot-Native-Processed: truemanifest 条目。spring-doc.cadn.net.cn

对 CycloneDX 插件的反应

CycloneDX 插件应用于项目时,Spring Boot 插件:spring-doc.cadn.net.cn

  1. 配置cyclonedxBomtask 使用applicationproject 类型并将 SBOM 输出到application.cdx文件,不包含完整的许可证文本。spring-doc.cadn.net.cn

  2. META-INF/sbom在生成的 jar 或 war 文件中。spring-doc.cadn.net.cn

  3. 添加Sbom-FormatSbom-Location添加到 jar 或 war 文件的清单中。spring-doc.cadn.net.cn