关键概念
项目
项目: 托管在 GitHub 或 GitLab 中的“普通 Java 项目”。项目在 CLI 中注册,以便可以使用简单的名称来引用它们。
例如,如果您使用“jpa”名称注册使用 Spring Data JPA 的项目的 GitHub URL,则可以通过调用命令 boot new my-jpa-app jpa
命令从该项目创建新项目。同样,您可以通过调用 boot add jpa
命令将 JPA 功能添加到现有项目中。
与项目相关的命令包括project list
、project add
和project remove
。
项目目录
项目目录:项目目录是共享共同主题的项目的集合。
在使用 CLI 注册目录后,在使用boot new
和boot add
命令时,项目将立即可用。目录是一个名为project-catalog.yaml
的 YAML 文件。它包含项目仓库 URL 列表和关联的名称。目录托管在 GitHub 或 GitLab 上。
与项目目录相关的命令包括catalog list
、catalog add
和catalog remove
。
用户定义的命令
命令:这些是声明式定义的命令,允许您添加或修改代码和配置文件。
您还可以运行任意可执行文件来执行开发工作流程中常见的任意任务。用户定义的命令集成到 CLI 中,与内置命令的外观相同。
用户定义的命令包含三个部分:命令名称
、子命令名称
和选项
。命令名称和子命令名称通过使用目录结构约定来定义。
例如,要创建一个新的用户定义的命令,其命令名称为controller
,子命令名称为new
,请创建以下目录结构
.spring/commands/controller/new
在此目录中,您可以有一个名为command.yaml
的文件,该文件定义命令的描述、选项和默认值。此目录(和子目录)包含定义对项目采取的操作的操作文件。
角色
在您的 CLI 中,角色提供了一种在用户定义的命令之间组织和重用变量的方法。
Spring CLI 包含一个默认的无名角色,该角色始终存在。此外,角色可以与特定名称相关联,以进一步区分其目的和用途。这些角色存储在.spring/roles
目录中的 YAML 文件中,该目录位于.spring/commands
目录旁边。
这些角色允许您定义在操作文件中可访问的变量,从而提供了一种在命令之间共享数据的方法。
您还可以使用角色为命令行选项提供值。如果命令行选项没有指定值,并且角色变量已使用与命令选项相同的名称定义,则该命令将使用角色变量的值作为该特定命令选项的值。
与项目相关的常见角色命令包括role add
、role remove
和role set
。