Spring Boot Maven 插件在 Maven 中提供 Spring Boot 支持,允许您打包可执行 jar 或 war 档案并“就地”运行应用程序。官网地址:https://docs.spring.io/spring-boot/docs/2.2.1.RELEASE/maven-plugin/
使用
1、如果项目中引入了spring-boot-starter-parent包,则在pom.xml文件中引入spring-boot-maven-plugin即可
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.1.8.RELEASE</version>
</plugin>
2、如果项目中未引入spring-boot-starter-parent包,则引入repackage goal即可
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.1.8.RELEASE</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
spring-boot-maven-plugin提供的goals
mvn spring-boot:build-info:生成项目的构建信息文件 build-info.properties
mvn spring-boot:help:用于展示spring-boot-maven-plugin的帮助信息
mvn spring-boot:repackage :可生成可执行的jar包或war包。插件的核心goal。
mvn spring-boot:run:运行 Spring Boot 应用
mvn spring-boot:start:将SpringBoot应用程序集成到集成测试阶段,在此之前启动
mvn spring-boot:stop:将SpringBoot应用程序集成到集成测试阶段,在此之前启动
repackage
执行命令mvn package即可打包,repackage goal绑定在maven的 package生命周期上,完整命令为mvn package spring-boot:repackage。在 mvn package 执行打包之后,repackage 再次打包生成可执行的 jar包或war包。
默认情况下,repackage生成包的名称与 mvn package 生成的原始包名称相同,而原始包被重命名为 *.origin
repackage 命令生成的包,默认会包含项目引入的所有依赖,包括scope为provied的依赖