
idea中默認打jar包
將jar包隨便放在哪個目錄下,java -jar jar包名稱運行

在瀏覽器中運行不需要加項目名

運行war包
1.修改pom.xml文件

2.在SpringBoot的pom文件中將web啟動器中的tomcat依賴排除,因為我們打包的war項目要放在自己的tomcat服務器中運行,需要排出SpringBoot項目內置的tomcat。然后再手動的將tomcat插件
依賴過來,並設置其scope值為provided。
<!--配置SpringBoot的web啟動器-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!--排除web啟動中自動依賴的tomcat插件-->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--
手動依賴tomcat插件,但是表明項目打包時該依賴不會被打進去,目的主要是保證開發階段本地SpringBoot
項目可以正常運行
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<!--打包的時候可以不用包進去,別的設施會提供。事實上該依賴理論上可以參與編譯,測試,運行等周期。
相當於compile,但是打包階段做了exclude操作-->
<scope>provided</scope>
</dependency>
3.SpringBoot的啟動類繼承SpringBootServletInitializer,並重寫configure
@SpringBootApplication
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);
}
}
4.確認webapp及其子目錄存在,且web.xml位於WEB-INF目錄下,否則打包提示錯誤

5.使用install命令打包項目,並將war包放到tomcat下的webapps下,啟動tomcat即可。
在瀏覽器中運行需要在請求前添加項目名

