对于最新的稳定版本,请使用 Spring Boot 3.4.0! |
对其他插件做出反应
当应用另一个插件时, Spring Boot 插件会通过对项目的配置进行各种更改来做出反应。 本节介绍这些更改。
对 Java 插件做出反应
当 Gradle 的 java
插件应用于项目时,Spring Boot 插件:
-
创建一个名为
的 BootJar
任务,该任务将为项目创建一个可执行的 uber jar。 jar 将包含主源集的运行时 Classpath 上的所有内容;类打包在 Jar 中bootJar
BOOT-INF/classes
BOOT-INF/lib
-
将任务配置为依赖于任务。
assemble
bootJar
-
配置任务以用作其档案分类器的约定。
jar
plain
-
创建一个名为
BootBuildImage
的任务,该任务将使用 buildpack 创建 OCI 映像。bootBuildImage
-
创建一个名为
的 BootRun
任务,该任务可用于使用源集运行应用程序,以查找其 main 方法并提供其运行时类路径。bootRun
main
-
创建一个名为 的 'BootRun' 任务,该任务可用于使用源集运行应用程序,以查找其 main 方法并提供其运行时类路径。
bootTestRun
test
-
创建一个名为 的配置,该配置包含任务生成的构件。
bootArchives
bootJar
-
为仅在开发时需要的依赖项(例如 Spring Boot 的 Devtools)创建命名的配置,并且不应将其打包在可执行 jar 和 wars 中。
developmentOnly
-
为仅在开发时以及编写和运行测试时需要的依赖项创建命名的配置,并且不应将其打包在可执行 jar 和 wars 中。
testAndDevelopmentOnly
-
创建名为 的配置。它相当于减去仅出现在 or 配置中的任何依赖项。
productionRuntimeClasspath
runtimeClasspath
developmentOnly
testDevelopmentOnly
-
将未配置编码的任何任务配置为使用 。
JavaCompile
UTF-8
-
将任何任务配置为使用 compiler 参数。
JavaCompile
-parameters
对 Kotlin 插件做出反应
将 Kotlin 的 Gradle 插件应用于项目时,Spring Boot 插件会:
-
将 Spring Boot 依赖项管理中使用的 Kotlin 版本与插件版本保持一致。 这是通过使用与 Kotlin 插件版本匹配的值设置属性来实现的。
kotlin.version
-
将任何任务配置为使用 compiler 参数。
KotlinCompile
-java-parameters
对 Dependency Management 插件做出反应
当 io.spring.dependency-management
插件应用于项目时, Spring Boot 插件将自动导入 bom。spring-boot-dependencies
对应用程序插件做出反应
当 Gradle 的应用程序
插件应用于项目时,Spring Boot 插件:
-
创建一个名为 的任务,该任务将创建使用 在配置中启动构件的脚本。 该任务配置为使用该属性作为其属性的约定。
CreateStartScripts
bootStartScripts
bootArchives
java -jar
applicationDefaultJvmArgs
defaultJvmOpts
-
创建一个名为 的新分发,并将其配置为在其目录中的配置中包含构件,在其目录中包含启动脚本。
boot
bootArchives
lib
bin
-
将任务配置为使用该属性作为其属性的约定。
bootRun
mainClassName
main
-
将 和 tasks 配置为使用该属性作为其属性的约定。
bootRun
bootTestRun
applicationDefaultJvmArgs
jvmArgs
-
将任务配置为使用该属性作为其清单中条目的约定。
bootJar
mainClassName
Start-Class
-
将任务配置为使用该属性作为其清单中条目的约定。
bootWar
mainClassName
Start-Class
对 GraalVM Native Image 插件做出反应
将 GraalVM Native Image 插件应用于项目时,Spring Boot 插件:
-
应用以下插件:
org.springframework.boot.aot
-
寄存器和源集。
aot
aotTest
-
注册一个名为的任务,该任务将为源集中的应用程序生成 AOT 优化源。
ProcessAot
processAot
aot
-
将源集的 Java 编译和进程资源任务配置为 depends on。
aot
processAot
-
注册一个名为该任务的任务,该任务将为源集中的应用程序测试生成 AOT 优化源。
ProcessTestAot
processTestAot
aotTest
-
将源集的 Java 编译和进程资源任务配置为 depends on。
aotTest
processTestAot
-
-
将源集的输出添加到 GraalVM 原生二进制文件的 Classpath 中。
aot
main
-
将源集的输出添加到 GraalVM 原生二进制文件的 Classpath 中。
aotTest
test
-
配置 GraalVM 扩展以禁用工具链检测。
-
将每个 GraalVM 原生二进制文件配置为需要 GraalVM 22.3 或更高版本。
-
将任务配置为将任务生成的可访问性元数据包含在其 jar 中。
bootJar
collectReachabilityMetadata
-
将任务配置为用作其生成器,并在其环境中设置为 。
bootBuildImage
paketobuildpacks/builder-jammy-tiny:latest
BP_NATIVE_IMAGE
true
对 CycloneDX 插件的反应
当 CycloneDX 插件应用于项目时,Spring Boot 插件:
-
将任务配置为使用项目类型,并将 SBOM 输出到 JSON 格式的文件中,而不带完整的许可证文本。
cyclonedxBom
application
application.cdx
-
在生成的 jar 或 war 文件中添加 SBOM。
META-INF/sbom
-
将 and 添加到 jar 或 war 文件的清单中。
Sbom-Format
Sbom-Location