快捷搜索: 王者荣耀 脱发

spring boot项目部署到tomcat报404

这真的是一个天坑,太坑了。 在网上找了很多解决方案,像众位网友所说的那样,我去掉springboot内嵌的tomcat,再依赖servlet-api,修改启动类继承SpringBootServletInitializer,打成war放入tomcat中 结果还是404,我心态炸了。。。

  1. pom.xml
去掉内嵌tomcat
<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope><!-- 打成war的时候打开注释,本地开发用内嵌tomcat时加上注释 -->
    </dependency>
打成war
<packaging>war</packaging>
  1. 启动类
@SpringBootApplication
    @ComponentScan(basePackages = "com.yzker")
    public class Application extends SpringBootServletInitializer {

        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            return application.sources(Application.class);
        }

        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }


    }
mvn clean package 将war包放到tomcat下试试吧,如果报404,参考下面 访问地址:localhost:{tomcat端口号} /重命名的war包名/xxxx

我的就是死在了重命名的包名上面,潜意识的以为包名是我新建的项目名。。。

经验分享 程序员 微信小程序 职场和发展