阿里云最近出了一个EDAS平台,提供全套分布式应用服务,对于不想折腾服务器配置的开发者还是很方便的,在应用部署的时候有三种方式,分别是镜像,jar包部署和war包部署
一般情况下SpringBoot以Jar包的形式进行打包
1.镜像
用docker生成一个springBoot的镜像
2.打jar包
pom依赖文件加入以下配置
<packaging>jar</packaging>
加入maven构建组件
点击package执行
mvn clean package
3.打war包
spring boot本身有一个内嵌的tomcat,如果不做其他配置直接打包,就会生成一个jar包
<packaging>war</packaging>
引入tomcat依赖
说明:
<scope>provided</scope> 指定该war包只在编译和测试的时候使用
启动类继承SpringBootServletInitializer并重写configure方法
编译过程
最终在target目录下生成对应的war包
大家会注意到war包下面还生成了一个 .war.original 文件,这是因为 spring-boot-maven-plugin在maven打包之后又重新打包了一次,然后命名为 .war.original
这里用表格比较一下jar包和war包的区别(因为头条不能编辑表格,就直接截图吧)
对比图 tomcat内部