Springboot打包成war
- 修改pom.xml文件
<packaging>war</packaging>
- 移除springboot自带的tomcat
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
- 启动类继承SpringBootServletInitializer实现configure方法
@SpringBootApplication
public class Application extends SpringBootServletInitializer implements Serializable{
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(Application.class);
}
}
- springboot如果通过war包构建会导致配置文件的端口失效,配置tomcat端口可以去tomcat/conf/server.xml 中修改
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
- 多个项目同时部署在tomcat中,可以添加如下配置:
spring.jmx.enabled=false