1. 程式人生 > >spingboot 打成war訪問專案出現404

spingboot 打成war訪問專案出現404

困擾了一下午,其實就是一個坑,問題關鍵就在Application啟動類

1.原先啟動類,最初的簡單生成模版

@SpringBootApplication
    @ComponentScan(basePackages = "com.test")
    public class Application  {

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


    }

2.你將啟動類改為如下即可

@SpringBootApplication
    @ComponentScan(basePackages = "com.test")
    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);
        }


    }

3.改變啟動類後,通過命令maven -install 打成war,放到tomcat裡面,會發現訪問專案不會出現404了,就成功了。

4.如果還有問題,可能在於pom.xml,增加以下依賴,再次嘗試

  <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope><!-- 打成war的時候開啟註釋,本地開發用內嵌tomcat時加上註釋 -->
    </dependency>
5.我是主要問題出現在啟動類上,希望能幫到大家。