Eclipse打包SpringBoot项目为war包并部署到Tomcat中运行
一、打包SpringBoot项目为war包
1、配置pom.xml
设置打包形式为war包
<packaging>war</packaging>
去除SpringBoot中嵌入的tomcat插件
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 移除嵌入式tomcat插件 -->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
增加servlet-api依赖
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-servlet-api</artifactId>
<!--将version版本修改为对应的tomcat版本-->
<version>8.5.20</version>
<scope>provided</scope>
</dependency>
2、修改SpringBoot启动类,继承SpringBootServletInitializer
public class MsgTestApplication extends SpringBootServletInitializer{
public static void main(String[] args) {
SpringApplication.run(MsgTestApplication.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources( MsgTestApplication.class);
}
}
3、打包为war包
点击项目右键——>Run as——>maven build

二、Tomcat部署
1、将项目target包下打包的war包解压放入tomcat/webapp/ROOT包下
2、项目部署在tomcat下,访问端口是tomcat的默认端口,而不是项目配置文件设置的访问端口
3、修改tomcat的默认端口,修改tomcat/conf/server.xml中port属性
<Connector port="9800" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
本文是参考网上资料部署项目的总结记录

浙公网安备 33010602011771号