1:項目改成war包,並去除springboot默認的tomcat
<!-- springBoot的啟動器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- provided 表明該包只在編譯和測試的時候使用,去除默認的tomcat -->
<scope>provided</scope>
</dependency>
<packaging>war</packaging>
2:項目打包
先編譯后打包
打包完成
此時部署到tomcat下的wabapps下,啟動tomcat。發行springboot並未成功啟動
原因是項目對應的Jar包沒未和項目一期打包到war包里。
解決方法:
進入到項目對應的目錄下,執行mvn dependency:copy-dependencies -DoutputDirectory=lib命令,稍等就會看到目錄下生成lib包,放到項目的web-inf下的lib里就好
3:修改項目目錄參考
在我們 tomcat 中的 conf 目錄中的 server.xml 配置文件中添加以下內容。
我們先把原先的內容注釋掉,重啟來看下會出現什么問題。
注釋掉后,重啟我們的tomcat,然后在瀏覽器中訪問 localhost:8080
。
你會發現這個時候是請求不到我們的項目的。這種情況下在訪問路徑中加上我們的項目名稱再試下,訪問 http://localhost:8080/analysis-tool-web-1.0-SNAPSHOT/login
(項目的所有資源、請求都在 analysis-tool-web-1.0-SNAPSHOT
目錄下)。
到這一步基本跟之前一樣是沒什么問題的。問題就在我們點擊登錄以后,后面的請求路徑的變化。我嘗試進行登錄,看登錄后的跳轉路徑。
這里缺省了我們的項目路徑 /analysis-tool-web-1.0-SNAPSHOT
,而當前項目資源、請求都在 analysis-tool-web-1.0-SNAPSHOT
文件夾下。請求直接跳轉至 /
下,導致找不到資源的請求報404錯誤。在 server.xml 中配置以上內容主要是為了為訪問項目設置資源的相對路徑。