开始

在pom.xml内。这里默认是jar包的形式。这段配置的代码可以不用写。默认的就是jar
image.png
本节课程使用war包的形式进行打包。单体服务的形式,直接用war包就可以了。等到做到微服务的拆分再做成jar包的形式
image.png
改成war包的形式
image.png

做一些额外的配置

第一步就是这么配置
image.png

第二步

spring boot内置了一个tomcat。父工程的pom.xml
image.png
搜索。Ctrl+F 启动搜索。
image.png

找到tomcat开头的这个。
image.png

image.png

image.png
鼠标右键,把spring-boot-starter-tomcat
image.png
然后在starter-web下方就多了个exclusions的节点。这就是去掉内置的tomcat
image.png
这就是打包为war包的第二步
image.png

第三步

引入额外的依赖,在api的工程的pom.xml内。增加依赖,才能启动servlet的支持。
image.png

第四步

通过内置的tomcat是通过,下面这个启动类来启动的。
image.png
当前我们使用外置的tomcat,这个application是不可以直接的启动的。我们要依托于另外一个war包启动类
创建war包的启动类。
image.png

image.png
继承,他是用于初始化servlet的
image.png
重写一个方法
image.png
image.png
然后在这里进行重写。

image.png
执行application为启动类。
image.png

打包

先来clean
image.png
然后再来install
image.png
报的错误
image.png
image.png
出现此问题的原因就是,在聚合工程,也就是父工程里面,我们移除了内置的tomcat。移除了之后,响应的servlet支持就没有了。
image.png

我们自己加的servlet支持在api这个子工程里面,只有在api的子工程里面才可以使用servlet相关的api。依赖添加在这里会导致common里面找不到servlet相关
image.png
注释掉不能放在api这个单独的服务里面
image.png
把servlet的依赖放到我们的聚合工程里面
image.png

再次install

image.png
有报错
image.png
这是因为之前写代码 ,自动提示,导入了一个没有用的包
image.png
ctrl+alt+O把类里面没有用到的杂包,去除掉。
image.png

再次maaven install

image.png
项目右键。打开项目所在的目录。
image.png
这个就是我们打包出来的war包
image.png
托到桌面上,然后修改名字,把后面的版本号去掉。
image.png
image.png

结束