Spring Boot Maven插件

举报
yd_221104950 发表于 2020/12/03 00:44:36 2020/12/03
【摘要】 使用maven命令创建SpringBoot项目,请参考《使用maven命令行方式创建springBoot工程》 SpringBoot Maven插件在Maven中提供了对SpringBoot的支持,允许打包可执行jar或war并直接运行应用程序。 在~/.m2/repository/org/springframework/boot/spring-boot-depen...

使用maven命令创建SpringBoot项目,请参考《使用maven命令行方式创建springBoot工程》

SpringBoot Maven插件在Maven中提供了对SpringBoot的支持,允许打包可执行jar或war并直接运行应用程序。

在~/.m2/repository/org/springframework/boot/spring-boot-dependencies/2.2.5.RELEASE/spring-boot-dependencies-2.2.5.RELEASE.pom文件列出了spring boot 提供了的jar包依赖。SpringBoot Maven插件的配置也在其中,如果没有,就要将下面的的配置添加到你的pom.xml文件中:

  <build> <pluginManagement> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.2.5.RELEASE</version> </plugin> ... </plugins> </pluginManagement>
  </build>

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

现在我们来看看Springboot maven插件提供的一些有用的命令:

命令 作用
spring-boot:run 运行Spring Boot应用程序
spring-boot:repackage 重新打包已有的jar/war,便可以使用java -jar从命令行执行它们
spring-boot:startspring-boot:stop 启动和停止Spring Boot应用程序,与run目标相反,它不会阻止并允许其他目标在应用程序上运行。 此目标通常用于集成测试场景,其中应用程序在测试套件之前启动并在之后停止。
spring-boot:build-info 根据当前MavenProject的内容生成build-info.properties文件,可供执行器使用。

1.spring-boot:run

~/Desktop/MyProject/springboot$ mvn spring-boot:run

  
 
  • 1

2.spring-boot:repackage

在spring boot里,可以直接把应用打包成为一个jar/war,然后java -jar <name>.jar命令运行启动jar/war,不需要另外配置一个Web Server。

(1)首先,要打jar包,还是war包,需要先在pom.xml里指定:

<project ...>
...
  <packaging>jar</packaging>
...
</project>  

  
 
  • 1
  • 2
  • 3
  • 4
  • 5

(2)为了能够顺利重新打包你的应用程序,使用java -jar运行,需要添加下面的配置到pom.xml:

<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.2.5.RELEASE</version> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins>
  </build>

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

(3)执行重新打包

~/Desktop/MyProject/springboot$ mvn package spring-boot:repackage

  
 
  • 1

如果遇到异常:repackage failed: Source file must be provided,请参考《repackage failed: Source file must be provided异常》

3.spring-boot:build-info

根据当前MavenProject的内容生成build-info.properties文件。

~/Desktop/MyProject/springboot$ mvn spring-boot:build-info

  
 
  • 1

结果在target/classes目录里生成META-INF/build-info.properties:


~/Desktop/MyProject/springboot$ cd target
~/Desktop/MyProject/springboot/target$ tree
.
├── classes
│   ├── com
│   │   └── wong
│   │ ├── App.class
│   │ └── First.class
│   └── META-INF
│ └── build-info.properties
...
~/Desktop/MyProject/springboot/target$ cat classes/META-INF/build-info.properties
build.artifact=springboot
build.group=com.wong
build.name=springboot
build.time=2020-03-22T03\:35\:24.179Z
build.version=1.0.0


  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

4.spring-boot:start 和 spring-boot:stop

~/Desktop/MyProject/springboot$ mvn package spring-boot:start

  
 
  • 1

文章来源: blog.csdn.net,作者:WongKyunban,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_40763897/article/details/105024623

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。