響應其他外掛
當應用其他外掛時,Spring Boot 外掛會透過對專案的配置進行各種更改來響應。本節描述了這些更改。
響應 Java 外掛
當 Gradle 的 java 外掛 應用於專案時,Spring Boot 外掛會:
-
建立一個名為
bootJar的BootJar任務,它將為專案建立一個可執行的 uber jar。該 jar 將包含主源集的執行時類路徑上的所有內容;類被打包在BOOT-INF/classes中,jar 被打包在BOOT-INF/lib中。 -
將
assemble任務配置為依賴於bootJar任務。 -
將
jar任務配置為使用plain作為其 archive classifier 的約定。 -
建立一個名為
bootBuildImage的BootBuildImage任務,它將使用 buildpack 建立一個 OCI 映象。 -
建立一個名為
bootRun的BootRun任務,可用於執行您的應用程式,它使用main源集查詢其主方法並提供其執行時類路徑。 -
建立一個名為
bootTestRun的BootRun任務,可用於執行您的應用程式,它使用test源集查詢其主方法並提供其執行時類路徑。 -
建立一個名為
bootArchives的配置,其中包含bootJar任務生成的工件。 -
建立一個名為
developmentOnly的配置,用於僅在開發時需要的依賴項,例如 Spring Boot 的 Devtools,不應打包在可執行 jar 和 war 中。 -
建立一個名為
testAndDevelopmentOnly的配置,用於僅在開發時以及編寫和執行測試時需要的依賴項,不應打包在可執行 jar 和 war 中。 -
建立一個名為
productionRuntimeClasspath的配置。它等同於runtimeClasspath減去任何僅出現在developmentOnly或testDevelopmentOnly配置中的依賴項。 -
配置所有未配置編碼的
JavaCompile任務使用UTF-8。 -
配置所有
JavaCompile任務使用-parameters編譯器引數。
響應 Kotlin 外掛
當 Kotlin 的 Gradle 外掛 應用於專案時,Spring Boot 外掛會:
-
將 Spring Boot 依賴管理中使用的 Kotlin 版本與外掛版本對齊。這透過將
kotlin.version屬性設定為與 Kotlin 外掛版本匹配的值來實現。 -
配置所有
KotlinCompile任務使用-java-parameters編譯器引數。
響應依賴管理外掛
當 io.spring.dependency-management 外掛 應用於專案時,Spring Boot 外掛將自動匯入 spring-boot-dependencies bom。
響應應用外掛
當 Gradle 的 application 外掛 應用於專案時,Spring Boot 外掛會:
-
建立一個名為
bootStartScripts的CreateStartScripts任務,它將建立使用java -jar啟動bootArchives配置中的工件的指令碼。該任務配置為使用applicationDefaultJvmArgs屬性作為其defaultJvmOpts屬性的約定。 -
建立一個名為
boot的新分發,並將其配置為在lib目錄中包含bootArchives配置中的工件,並在bin目錄中包含啟動指令碼。 -
配置
bootRun任務使用mainClassName屬性作為其main屬性的約定。 -
配置
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源集。 -
註冊一個名為
processAot的ProcessAot任務,它將在aot源集中為應用程式生成 AOT 最佳化原始碼。 -
配置
aot源集的 Java 編譯和處理資源任務以依賴於processAot。 -
註冊一個名為
processTestAot的ProcessTestAot任務,它將在aotTest源集中為應用程式的測試生成 AOT 最佳化原始碼。 -
配置
aotTest源集的 Java 編譯和處理資源任務以依賴於processTestAot。
-
-
將
aot源集的輸出新增到mainGraalVM 本機二進位制檔案的類路徑中。 -
將
aotTest源集的輸出新增到testGraalVM 本機二進位制檔案的類路徑中。 -
配置 GraalVM 擴充套件以停用工具鏈檢測。
-
配置
bootJar任務以在其 jar 中包含collectReachabilityMetadata任務生成的 reachability metadata。 -
配置
bootJar任務以新增Spring-Boot-Native-Processed: true清單條目。
響應 CycloneDX 外掛
當 CycloneDX 外掛 應用於專案時,Spring Boot 外掛會:
-
配置
cyclonedxBom任務以:-
使用
application專案型別。 -
將 JSON 格式的 SBOM 輸出到
application.cdx.json檔案。 -
停用 XML 格式的 SBOM。
-
停用完整的許可證文字。
-
-
將 SBOM 新增到生成的 jar 或 war 檔案中的
META-INF/sbom下。 -
將
Sbom-Format和Sbom-Location新增到 jar 或 war 檔案的清單中。