主要概念

Spring CLI 仰賴許多貫穿整個專案的主要概念

專案

專案:託管在 GitHub 或 GitLab 中的「純粹舊有的 Java 專案」。專案會向 CLI 註冊,以便使用簡單的名稱即可參照它們。

例如,如果您註冊一個使用 Spring Data JPA 的專案的 GitHub URL,並將其命名為 'jpa',您可以透過調用 boot new my-jpa-app jpa 命令從該專案建立一個新專案。同樣地,您可以透過調用 boot add jpa 命令將 JPA 功能新增到現有專案。

與專案相關的命令有 project listproject addproject remove

專案目錄

專案目錄:專案目錄是共享共同主題的專案集合。

向 CLI 註冊目錄後,在使用 boot newboot add 命令時,這些專案即可隨時使用。目錄是一個 YAML 檔案,名稱為 project-catalog.yaml。它包含專案儲存庫 URL 列表和相關名稱。目錄託管在 GitHub 或 GitLab 上

與專案目錄相關的命令有 catalog listcatalog addcatalog remove

使用者定義命令

命令:這些是以宣告方式定義的命令,可讓您新增或修改程式碼和組態檔。

您也可以執行任意可執行檔,以執行開發工作流程中常見的任何任意任務。使用者定義命令已整合到 CLI 中,並且外觀與內建命令相同。

使用者定義命令有三個部分:命令名稱子命令名稱選項。命令名稱和子命令名稱是透過使用目錄結構慣例來定義的。

例如,若要建立命令名稱為 controller 且子命令名稱為 new 的新使用者定義命令,請建立以下目錄結構

.spring/commands/controller/new

在這個目錄中,您可以有一個名為 command.yaml 的檔案,用於定義命令的描述、選項和預設值。此目錄(和子目錄)包含動作檔案,用於定義要對專案執行的動作。

動作檔案

動作檔案:這些檔案定義可以對專案執行的動作。

角色

在您的 CLI 中,角色提供了一種跨使用者定義命令組織和重複使用變數的方法。

Spring CLI 包含一個預設的未命名角色,該角色始終存在。此外,角色可以與特定名稱關聯,以進一步區分其用途和用法。這些角色以 YAML 檔案的形式儲存在 .spring/roles 目錄中,該目錄與 .spring/commands 目錄位於同一位置。

這些角色可讓您定義可在動作檔案中存取的變數,從而提供一種在命令之間共享資料的方法。

您也可以使用角色為命令列選項提供值。如果命令列選項沒有指定值,並且角色變數已定義為與命令選項相同的名稱,則命令會針對該特定命令選項使用角色變數的值。

與專案相關的一些常見角色命令包括 role addrole removerole set