Spring Boot 包含一系列的 "Starter POMs",它们都是一些方便的依赖描述符,你可以在你的应用中导入。在一些情况下,你可能想创建自己的自定义 starter。以下是创建自己的 Spring Boot Starter 的步骤。
文章目录
-
- [1. 创建基本的 Maven 项目](#1. 创建基本的 Maven 项目)
- [2. 配置 pom.xml](#2. 配置 pom.xml)
- [3. 创建自启动类](#3. 创建自启动类)
- [4. 创建自动配置的元数据文件](#4. 创建自动配置的元数据文件)
- [5. 打包并发布 Starter](#5. 打包并发布 Starter)
1. 创建基本的 Maven 项目
自定义 Starter 是一个 Maven 项目,需要创建一个新的 Maven 项目。如果你使用的是 Spring Tool Suite 或者 IntelliJ,你可以通过它们内置的 Maven 集成来创建项目。
项目的结构如下:
markdown
my-starter
├── src
│ └── main
│ ├── java
│ │ └── com
│ │ └── example
│ │ └── starter
│ └── resources
└── pom.xml
2. 配置 pom.xml
Starter 的 pom.xml
文件类似于其他 Spring Boot 项目的 pom.xml
文件。根据你的 Starter 需要,添加相应的依赖。
xml
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<spring-boot.version>2.1.5.RELEASE</spring-boot.version>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>${spring-boot.version}</version>
</parent>
3. 创建自启动类
自启动类是 Starter 所包含的最主要的部分。它们通常包含一些自动配置的 Bean,这些 Bean 在项目启动时自动初始化。创建一个标注了 @Configuration
注解的类,该类可以包含多个 Bean 定义。
java
@Configuration
public class MyAutoConfiguration {
@Bean
public MyService myService() {
return new MyService();
}
}
4. 创建自动配置的元数据文件
Spring Boot 需要知道你 Starter 所包含的自动配置类。你应该在 src/main/resources/META-INF/
下创建一个名为 spring.factories
的文件,并在其中指定你的自启动类。
properties
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.example.starter.MyAutoConfiguration
5. 打包并发布 Starter
最后一步就是打包并发布你的 Starter。运行 mvn install
命令,Maven 会将你的 Starter 打包并安装到本地仓库,之后你就可以在其他 Spring Boot 项目中使用它了。
在项目中添加你的 Starter 简单地在 pom.xml
中添加对它的依赖即可:
xml
<dependency>
<groupId>com.example</groupId>
<artifactId>my-starter</artifactId>
<version>1.0.0</version>
</dependency>
以上就是自己创建 Spring Boot Starter 所需的步骤,只需要几个简单的步骤,你就可以创建出供其他人或者其他项目使用的 Starter,增加开发效率。希望本文对你有所帮助!