springboot 项目打包与发布
打jar包
在工程的pom.xml中添加以下依赖
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
`fatJAR( 胖jar 包)`:spring-boot 默认提供内嵌的tomcat,所以打包直接生成jar 包,在执行package 命令后,会产生一个jar 包。进入这个目录用压缩软件打开此jar 包,其中会发现一个叫lib 的文件夹,打开lib 文件夹发现此文件夹下全是工程依赖的jar包,甚至还有tomcat。
由于fatJAR 本身就包括tomcat , 所以就不需要另外部署了,直接在命令行就可以把我们的应用启动起来,在控制台会出现启动信息,在浏览器访问程序
启动命令:java –jar 命令来执行此jar 包。
打war包
当我们希望一个tomcat 来管理多个项目时,需要项目是war 格式的包而不是jar 格式的包。
我们按照以下步骤完成对工程的改造
-
修改pom.xml
将打包方式修改为war<packaging>war</packaging>
添加依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency>
spring-boot-starter-tomcat 是原来被传递过来的依赖,默认会打到包里,所以我们再次引入此依赖,并指定依赖范围为provided,这样tomcat 相关的jar就不会打包到war 里了.
-
添加ServletInitializer
import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.context.web.SpringBootServletInitializer; public class ServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure( SpringApplicationBuilder application) { return application.sources(Application.class); } }
由于web3.0 规范,是没有web.xml 的,而此类的作用与web.xml相同。
-
运行package 打包命令生成war 包
生成后将war 包放入tomcat,启动tomcat,即可成功发布。
以上是2种springboot 项目打包与发布方式,2020-09-29 闪光