弹簧初始化器
Spring Initializr 是一个基于 Web 的工具,用于生成 Spring Boot 项目结构。 initializr 中的拼写错误受到了 initializr 的启发。现代 IDE 已经集成了提供初始项目结构的 Spring Initializr。开发人员很容易为他们的项目选择必要的配置。 Spring Initializr 工具负责为任何基于 Spring 的项目进行以下配置。
- 构建工具(Maven 或 Gradle)来构建应用程序。
- Spring Boot 版本(根据版本添加依赖项)。
- 项目所需的依赖项。
- 语言及其版本。
- 项目元数据,如名称、包装(Jar 或 War)、包名称等。
使用所有提供的信息,spring Initializr 生成 Spring 项目结构。我们可以从 Web、IDE 或命令行使用 Spring Initializr。
Spring Initializr Web
让我们学习如何使用 Spring Initializr Web UI 来生成 Spring Boot 项目,之前的步骤是导航到 start.spring.io 来获取它。弹出的窗口如下图所示:
Spring Initializr UI 具有以下选项,
- 项目:使用这个可以创建Maven或Gradle项目即; Maven 或 Gradle 可以用作构建工具。默认选项是 Maven 项目。整个教程都使用了Maven项目。
- 语言: Spring Initializr 提供Java、Kotlin 和 Groovy 作为项目的编程语言。 Java是默认选项。
- Spring Boot 版本:使用这个可以为他们的项目选择 Spring Boot 版本。 Spring Boot 最新版本是 2.5.0。 SNAPSHOT 版本正在开发中并且不稳定。
- 项目依赖项:依赖项是我们可以添加到项目中的工件。我正在选择 Web 依赖项。
- 项目元数据:它是关于项目的信息。
元数据中的信息确实包括以下关键点:
Group ID:项目组的ID。
- Artifact:它是应用程序的名称。
- 名称 应用程序名称。
- 描述:关于项目。
- 包名:它是 Group 和 Artifact Id 的组合。
- 包装:可以选择使用这个 Jar 或 War 包装
生成:当点击生成选项时,项目以 zip 格式下载。可以解压缩 zip 文件并将项目加载到 IDE 中。
探索:这允许查看生成的项目并对其进行更改。
项目结构: Spring Boot 项目如下所示:
方法:
Spring Initializr 可以通过以下两种方式实现:
- 使用IDE
- 使用
方法 1:使用 IDE 的 Spring Initializr
Spring Initializr 受到各种 IDE 的支持,例如 Spring Tool Suite (STS)、IntelliJ IDEA Ultimate 和 IntelliJ IDEA Community Edition(有限配置选项)、Netbeans 和 VSCode。
如果您使用的是 Netbeans,则可以将 Spring Initializr 插件添加到 IDE。
如果您使用的是 VSCode,可以在 VSCode 中添加 vscode-spring-initializr 插件。
IntelliJ 社区版用法:
应遵循的步骤:
- 打开 IntelliJ CE IDE。
- 单击新建项目。
- 选择 Maven Project 和Java JDK Home 路径
- 输入项目元数据详细信息
- 单击完成按钮。
让我们形象地描述上述步骤以获得更公平的理解
- 打开 IntelliJ CE IDE。
- 单击新建项目。
- 选择 Maven 项目和Java JDK 主路径。
- 输入项目元数据详细信息,例如 Name、GroupId、ArtifactId。
- 单击完成按钮。
Note: If you are using IntelliJ Ultimate Edition, the steps are available here.
方法二: Spring Initializr 使用命令行
许多开发人员喜欢从命令行做事。对于他们来说,可以选择使用 cURL 或 HTTPie 等命令行实用程序创建 Spring 项目。要使用 cURL 或 HTTPie,必须在使用前安装它们。
curl https://start.spring.io
上面的命令将给出有关如何使用 curl 创建项目的完整说明。
假设您要基于 Spring Boot 1.5.2.RELEASE 生成一个demo.zip项目,使用 web 和开发人员工具依赖项(记住,这两个 ID 显示在服务的能力中):
$ curl https://start.spring.io/starter.zip -d dependencies=web,devtools \
-d bootVersion=1.5.2.RELEASE -o demo.zip.zip
也可以使用 HTTP 命令生成完全相同的项目:
$ http https://start.spring.io/starter.zip -d dependencies==web,devtools \
-d bootVersion==1.5.1.RELEASE -o demo.zip
Note: Apart from all these, Spring Initializr teams also provide extensible APIs for creating JVM-based projects. Also, one can create their own instance of Spring Initializr for their own projects. It also provides various options for the project that are expressed in a metadata model. The metadata model allows us to configure the list of dependencies supported by JVM and platform versions, etc.