引起这种问题一般有两种情况:
一、spring boot在打包的时候默认会将tomcat的运行包也打在其中,如果直接将这种包放在tomcat中运行,会造成jar包冲突,解决方案是将tomcat包排除在外,具体操作是在build.gradle文件中增加一行 provide 'org.springframework.boot:spring-boot-starter-tomcat
二、更新启动类
下面DemoApplication是你的项目名称 让其继承SpringBootServletInitializer 并重写configure方法
class DemoApplication extends SpringBootServletInitializer{
static void main(String[] args) {
SpringApplication.run(DemoApplication, args)
}
// 不重写打包war部署到tomcat接口会报404
//class DemoApplication extends SpringBootServletInitializer
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(DemoApplication.class);
}
}