SpringBoot項目如何部署到獨立的tomcat上


自己寫了個小web項目,想部署到獨立的tomcat,購買了一年阿里雲的服務器,然后就開始了折騰,首先安裝jdk,tomcat,mysql,ok,都很順利,項目在本地測試,也ok,然后打war包,成功,把生成的war包上傳至webapp下,啟動tomcat,輸入服務器ip:8080+項目名訪問,報錯!

然后開始折騰tomcat,首先解決403 Access Denied的問題,網上一頓搜索,得到良莠不齊的鏈接,下面這個鏈接是比較靠譜的解決方法

https://blog.csdn.net/Hello_World_QWP/article/details/79581174

解決完這個問題后,輸入application.protrities里面server.servlet.context-path=/aaa配置的aaa路徑訪問,失敗,前面不加也失敗,倒是輸入服務器ip:8080可以正常訪問tomcat,一頓亂輸之后,沒轍了。

冷靜一下,上個廁所,接着折騰,既然是訪問獨立的tomcat,server.servlet.context-path=/aaa肯定是不需要的

把logs里的catalina.out文件拿出來瞅瞅,發現啟了一個空的tomcat,難怪執行shutdown.sh和start.sh都超快,快到爽的不行,既然定位到問題所在,去網上搜索答案就簡單了。ps:話說根據關鍵字搜索自己所需要的答案也是能力的一種。有興趣的同學推薦讀讀《提問的智慧》。

把本文的標題當關鍵字一搜,找到2個靠譜的鏈接:

https://blog.csdn.net/u010752082/article/details/78269585

https://www.cnblogs.com/renshengruozhiruchujian/p/7799521.html

重點就是:在你的啟動類里繼承SpringBootServletInitializer,然后重寫configure方法,

public class DmsApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder){
return builder.sources(DmsApplication.class);
}
public static void main(String[] args) {
SpringApplication.run(DmsApplication.class, args);
}
}

告訴tomcat讀取spring。

然后從新打包發布,再次查看日志,ok,讀到項目了。再拿以前的鏈接訪問,大功告成。

 

如何快速定位問題,用什么手段,怎么理性的分析問題,如何根據關鍵字檢索,遇到問題,想盡各種方法去解決,一點點排除問題,都是個人能力的體現,平時一定要多多注意自己這方面能力的鍛煉。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM