響應其他外掛

當應用其他外掛時,Spring Boot 外掛會透過對專案的配置進行各種更改來響應。本節描述了這些更改。

響應 Java 外掛

當 Gradle 的 java 外掛 應用於專案時,Spring Boot 外掛會:

  1. 建立一個名為 bootJarBootJar 任務,它將為專案建立一個可執行的 uber jar。該 jar 將包含主源集的執行時類路徑上的所有內容;類被打包在 BOOT-INF/classes 中,jar 被打包在 BOOT-INF/lib 中。

  2. assemble 任務配置為依賴於 bootJar 任務。

  3. jar 任務配置為使用 plain 作為其 archive classifier 的約定。

  4. 建立一個名為 bootBuildImageBootBuildImage 任務,它將使用 buildpack 建立一個 OCI 映象。

  5. 建立一個名為 bootRunBootRun 任務,可用於執行您的應用程式,它使用 main 源集查詢其主方法並提供其執行時類路徑。

  6. 建立一個名為 bootTestRunBootRun 任務,可用於執行您的應用程式,它使用 test 源集查詢其主方法並提供其執行時類路徑。

  7. 建立一個名為 bootArchives 的配置,其中包含 bootJar 任務生成的工件。

  8. 建立一個名為 developmentOnly 的配置,用於僅在開發時需要的依賴項,例如 Spring Boot 的 Devtools,不應打包在可執行 jar 和 war 中。

  9. 建立一個名為 testAndDevelopmentOnly 的配置,用於僅在開發時以及編寫和執行測試時需要的依賴項,不應打包在可執行 jar 和 war 中。

  10. 建立一個名為 productionRuntimeClasspath 的配置。它等同於 runtimeClasspath 減去任何僅出現在 developmentOnlytestDevelopmentOnly 配置中的依賴項。

  11. 配置所有未配置編碼的 JavaCompile 任務使用 UTF-8

  12. 配置所有 JavaCompile 任務使用 -parameters 編譯器引數。

響應 Kotlin 外掛

Kotlin 的 Gradle 外掛 應用於專案時,Spring Boot 外掛會:

  1. 將 Spring Boot 依賴管理中使用的 Kotlin 版本與外掛版本對齊。這透過將 kotlin.version 屬性設定為與 Kotlin 外掛版本匹配的值來實現。

  2. 配置所有 KotlinCompile 任務使用 -java-parameters 編譯器引數。

響應 War 外掛

當 Gradle 的 war 外掛 應用於專案時,Spring Boot 外掛會:

  1. 建立一個名為 bootWarBootWar 任務,它將為專案建立一個可執行的 fat war。除了標準打包外,providedRuntime 配置中的所有內容都將打包在 WEB-INF/lib-provided 中。

  2. assemble 任務配置為依賴於 bootWar 任務。

  3. war 任務配置為使用 plain 作為其 archive classifier 的約定。

  4. bootArchives 配置配置為包含 bootWar 任務生成的工件。

響應依賴管理外掛

io.spring.dependency-management 外掛 應用於專案時,Spring Boot 外掛將自動匯入 spring-boot-dependencies bom。

響應應用外掛

當 Gradle 的 application 外掛 應用於專案時,Spring Boot 外掛會:

  1. 建立一個名為 bootStartScriptsCreateStartScripts 任務,它將建立使用 java -jar 啟動 bootArchives 配置中的工件的指令碼。該任務配置為使用 applicationDefaultJvmArgs 屬性作為其 defaultJvmOpts 屬性的約定。

  2. 建立一個名為 boot 的新分發,並將其配置為在 lib 目錄中包含 bootArchives 配置中的工件,並在 bin 目錄中包含啟動指令碼。

  3. 配置 bootRun 任務使用 mainClassName 屬性作為其 main 屬性的約定。

  4. 配置 bootRunbootTestRun 任務使用 applicationDefaultJvmArgs 屬性作為其 jvmArgs 屬性的約定。

  5. 配置 bootJar 任務使用 mainClassName 屬性作為其清單中 Start-Class 條目的約定。

  6. 配置 bootWar 任務使用 mainClassName 屬性作為其清單中 Start-Class 條目的約定。

響應 GraalVM Native Image 外掛

GraalVM Native Image 外掛 應用於專案時,Spring Boot 外掛會:

  1. 應用 org.springframework.boot.aot 外掛,該外掛會:

    1. 註冊 aotaotTest 源集。

    2. 註冊一個名為 processAotProcessAot 任務,它將在 aot 源集中為應用程式生成 AOT 最佳化原始碼。

    3. 配置 aot 源集的 Java 編譯和處理資源任務以依賴於 processAot

    4. 註冊一個名為 processTestAotProcessTestAot 任務,它將在 aotTest 源集中為應用程式的測試生成 AOT 最佳化原始碼。

    5. 配置 aotTest 源集的 Java 編譯和處理資源任務以依賴於 processTestAot

  2. aot 源集的輸出新增到 main GraalVM 本機二進位制檔案的類路徑中。

  3. aotTest 源集的輸出新增到 test GraalVM 本機二進位制檔案的類路徑中。

  4. 配置 GraalVM 擴充套件以停用工具鏈檢測。

  5. 配置 bootJar 任務以在其 jar 中包含 collectReachabilityMetadata 任務生成的 reachability metadata。

  6. 配置 bootJar 任務以新增 Spring-Boot-Native-Processed: true 清單條目。

響應 CycloneDX 外掛

CycloneDX 外掛 應用於專案時,Spring Boot 外掛會:

  1. 配置 cyclonedxBom 任務以:

    1. 使用 application 專案型別。

    2. 將 JSON 格式的 SBOM 輸出到 application.cdx.json 檔案。

    3. 停用 XML 格式的 SBOM。

    4. 停用完整的許可證文字。

  2. 將 SBOM 新增到生成的 jar 或 war 檔案中的 META-INF/sbom 下。

  3. Sbom-FormatSbom-Location 新增到 jar 或 war 檔案的清單中。

© . This site is unofficial and not affiliated with VMware.