Web項目打成war包部署Tomcat時運行startup.bat直接閃退部署失敗解決方案,tomcatstartup.bat

來源:互聯網
上載者:User

Web項目打成war包部署Tomcat時運行startup.bat直接閃退部署失敗解決方案,tomcatstartup.bat

即上篇通過將web項目打成war包部署到Tomcat伺服器,解決mysql問題後,又出現了新問題,真是一波三折,所以將解決過程分享給大家,希望能協助到小夥伴們~

將打好的war包拷貝到Tomcat的webapps目錄,然後在Tomcat的bin目錄找到startup.bat批次檔,直接雙擊執行,結果運行幾秒後直接閃退,頓時有種不好的預感,在瀏覽器訪問web項目,結果連localhost:8080都無法訪問,web項目未發布成功,一臉懵逼~

沒有日誌看不到為啥發布不成功額,想了想,可以稍微修改下startup.bat批次檔,添加PAUSE,這樣運行結束只有按任意鍵才會關掉視窗(調試成功,在去掉PAUSE)。

如果有錯誤資訊,這時候會顯示出來,可以再根據它的錯誤提示。

此時,發現顯示了一些環境變數,是不是環境變數沒有配置引起的報錯呢,就去檢查了下,發現沒有配置JRE_HOME環境變數。配置後,發現還是閃退。

也不清楚時環境變數引起的還是什麼原因,沒轍了,只能再找度娘了。

經過查資料,關於Tomcat中startup.bat原理的相關內容,覺得很有協助,摘取部分區段分享下,可能跟解決這個問題沒關係,可略過~

startup.bat 解析

 驗證CATALINA_HOME 環境變數是否設定,如果沒有設定則通過CATALINA_HOME/bin目錄下尋找catalina.bat檔案來確定CATALINA_HOME環境變數是否有效,如果沒有找到catalina.bat 則goto end,結束。

驗證catalina.bat是否存在,如果不能存在則結束。

判斷啟動 startup.bat 是否有參數,如果有參數,如果有有則賦值給 CMD_LINE_ARGS變數。 
通過call執行catalina.bat ,並傳入參數。

其實startup.bat 的主要作用就是幫你找到catalina.bat並執行它。

好處:

如果你配置CATALINA_HOME的環境變數了,就可以把startup.bat 放到任何目錄下,都可以啟動tomcat了。 

 好了,根據對startup.bat檔案的解析,發現現在的問題跟環境變數沒關係。瞬間有點失落。經驗告訴我,可以查看日誌撒。發現日誌存在錯誤記錄檔額。

問題解決方案請參考:Web項目打成war包部署到tomcat時報MySQL Access denied for user 'root'@'localhost' (using password: YES)錯誤解決方案

Tomcat其他問題總結:

問題一:Neither the JAVA_HOME nor the JRE_HOME environment variable is defined

Tomcat的startup.bat,它調用了catalina.bat,而catalina.bat則調用了setclasspath.bat,只要在setclasspath.bat的開頭聲明環境變數(紅色兩行)就可以了,原因是後來較新版本安裝完不會自動登記環境變數JAVA_HOME,JRE_HOME。

這樣在每次運行startup.bat時就自動註冊了JAVA_HOME,JRE_HOME。

問題二:Cannot find "D:\Program Files\apache-tomcat-7.0.52\bin\setclasspath.bat"

可能是CATALINA_HOME的值在某個地方被寫死了,像我的綠色版tomcat在bin檔案下多了一個setenv.bat的檔案,開啟一看果然是在這裡面被寫死了CATALINA_HOME的路徑,這應該是為了某種原因被人後加上的設定檔案,把這個檔案刪除之後,tomcat可以正常運行了。

這種情況,可以去看catalina.bat中的配置,如,可能配置死的內容就在這個檔案裡。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.