SpringBoot项目打包成jar
- 一、为什么打包
- 二、如何打包
- (1)使用IDEA进行打包
- (2)使用maven进行打包
- 三、运行jar包
- 四、注意
一、为什么打包
项目开发完毕后会将前后端应用打包,然后部署到服务器上运行。Java Web应用在Spring Boot之前,通常是打包成war包,结合Tomcat来完成部署。而对于SpringBoot,官方的建议是将Spring Boot应用打包成一个fat jar(SpringBoot默认打包方式),即项目的依赖jar包也会被包含在Spring Boot项目的jar包当中,这个fat jar会把Tomcat内置进来,所以部署时也不需要单独配置Tomcat。这样部署一个SpringBoot应用就非常简单,无需预装任何服务器,只需要上传jar包即可。
二、如何打包
(1)使用IDEA进行打包
1.打开项目,右击项目选中Open Module Settings
进入project Structure
,如下图所示:
选中Artifacts
,点击中间的加号(Project Settings->Artifacts->JAR->From modules with dependencies ),如下图所示:
2.弹出Create JAR from Modules
,选择‘Main Class’,然后点击OK
3.开始打包,点击右侧的Maven Projects,打开LIfecycle
,先点击clean
,再点击package
,生成target文件夹,里面有以项目名命名加版本号的jar文件,至此打包完成。
(2)使用maven进行打包
SpringBoot自带一个更简单的spring-boot-maven-plugin插件可以用来打包,只需要在pom.xml中加入以下配置:
<project>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
无需任何配置,这个插件会自动定位应用程序的入口Class,执行以下Maven命令即可打包:
$ mvn clean package
三、运行jar包
进入jar所在的文件夹,使用java -jar
命令运行jar,项目就能启动
java -jar demoa-0.0.1-SNAPSHOT.jar
四、注意
- 因为springboot内置了tomcat,所以springboot项目打包成jar可以免去tomcat的配置,如果是打包成war包,则还需要配置tomcat。
- 打包后在target目录下有两个jar文件,其中有一个jar包后缀为
.original
,这是Maven标准打包插件打的jar包,它只包含我们自己的Class,不包含依赖,而后缀为.jar
的是SpringBoot打包插件创建的包含依赖的jar,可以直接运行。
感谢大家的耐心阅读,如有建议请私信或评论留言