| 此版本仍在开发中,尚不被认为是稳定的。对于最新的稳定版本,请使用 Spring Boot 3.5.5! | 
使用插件
Maven 用户可以继承spring-boot-starter-parent项目以获取合理的默认值。父项目提供以下功能:
- 
Java 17 作为默认编译器级别。 
- 
UTF-8 源编码。 
- 
编译 -parameters.
- 
依赖项管理部分,继承自 spring-boot-dependenciesPOM,用于管理常见依赖项的版本。此依赖项管理允许您省略<version>标签。
- 
执行 repackage目标使用repackage执行 ID。
- 
一个 native配置文件,用于配置构建以能够生成本机映像。
- 
合理的资源过滤。 
- 
合理的插件配置 ( Git Commit Id Plugin和阴影)。
- 
合理的资源过滤 application.properties和application.yml包括特定于配置文件的文件(例如application-dev.properties和application-dev.yml)
| 由于 application.properties和application.yml文件接受 Spring 样式占位符 (${…}),Maven 过滤更改为@..@占位符。(您可以通过设置名为resource.delimiter.) | 
| 这 ,然后配置源和目标选项:  | 
继承起始父 POM
要将项目配置为继承自spring-boot-starter-parent,将parent如下:
<!-- Inherit defaults from Spring Boot -->
<parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>4.0.0-M2</version>
</parent>| 您应该只需要在此依赖项上指定 Spring Boot 版本号。如果您导入其他Starters,您可以安全地省略版本号。 | 
通过该设置,您还可以通过覆盖自己项目中的属性来覆盖单个依赖项。例如,要使用不同版本的 SLF4J 库和 Spring Data 发布训练,您可以将以下内容添加到pom.xml:
<properties>
	<slf4j.version>1.7.30</slf4j.version>
	<spring-data-releasetrain.version>Moore-SR6</spring-data-releasetrain.version>
</properties>浏览 Spring Boot 参考中的 Dependency Versions Properties 部分,获取依赖版本属性的完整列表。
在没有父 POM 的情况下使用 Spring Boot
您可能有原因不继承spring-boot-starter-parent聚 甲醛。 您可能需要使用自己的公司标准父级,或者您可能更愿意显式声明所有 Maven 配置。
如果您不想使用spring-boot-starter-parent,您仍然可以通过使用import作用域依赖项,如下所示:
<dependencyManagement>
	<dependencies>
		<dependency>
			<!-- Import dependency management from Spring Boot -->
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-dependencies</artifactId>
			<version>4.0.0-M2</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
	</dependencies>
</dependencyManagement>如上所述,前面的示例设置不允许您使用属性覆盖单个依赖项。要获得相同的结果,您需要在dependencyManagement部分在spring-boot-dependencies进入。 例如,要使用不同版本的 SLF4J 库和 Spring Data 发布训练,您可以将以下元素添加到pom.xml:
<dependencyManagement>
	<dependencies>
		<!-- Override SLF4J provided by Spring Boot -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>1.7.30</version>
		</dependency>
		<!-- Override Spring Data release train provided by Spring Boot -->
		<dependency>
			<groupId>org.springframework.data</groupId>
			<artifactId>spring-data-releasetrain</artifactId>
			<version>2020.0.0-SR1</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-dependencies</artifactId>
			<version>4.0.0-M2</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
	</dependencies>
</dependencyManagement>覆盖命令行上的设置
该插件提供了许多用户属性,从spring-boot,允许您从命令行自定义配置。
例如,可以调整配置文件以在运行应用程序时启用,如下所示:
$ mvn spring-boot:run -Dspring-boot.run.profiles=dev,local如果既想有一个默认值,又允许在命令行上覆盖它,则应该结合使用用户提供的项目属性和 MOJO 配置。
<project>
	<properties>
		<app.profiles>local,dev</app.profiles>
	</properties>
	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<profiles>${app.profiles}</profiles>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>以上确保local和dev默认启用。现在已经公开了一个专用属性,这也可以在命令行上覆盖:
$ mvn spring-boot:run -Dapp.profiles=test