起因 ?
在 Windows 下運行 Tomcat 應用服務器,最簡單的方式就是雙擊 startup.bat 了,或者是在命令行窗口中輸入 startup.bat。
按照 Tomcat 的默認設置,最后 Tomcat 會運行在一個新建的命令行窗口中(和 startup.bat 不在同一個命令行窗口中)。這種方式有個很麻煩的問題,就是 一旦 Tomcat 遇到致命錯誤 (常見的有 -Xms 或 -Xmx 設置過大,或者 Tomcat 要使用的端口已經被其他應用程序搶占等), 該新建的命令行窗口就會直接關閉 。對于使用者來說,其感受就是 Tomcat 窗口一閃而過,難以看到具體錯誤信息是什么。
解決方法 ?
其實解決方法也很簡單,我們看看 {TOMCAT_HOME}/bin 目錄下的 catalina.bat 文件,其中有這樣一段內容:
echo Usage: catalina ( commands ... ) echo commands: echo debug Start Catalina in a debugger echo debug -security Debug Catalina with a security manager echo jpda start Start Catalina under JPDA debugger echo run Start Catalina in the current window echo run -security Start in the current window with security manager echo start Start Catalina in a separate window echo start -security Start in a separate window with security manager echo stop Stop Catalina echo version What version of tomcat are you running?
注意這兩行:
echo run Start Catalina in the current window echo start Start Catalina in a separate window
原來 run 就是在當前窗口中運行,而 start 就是在新窗口中運行。
然后我們再來看 startup.bat 文件,最后有一行:
call "%EXECUTABLE%" start %CMD_LINE_ARGS%
果然是用了 start 參數。那么我們就把它改成 run :
call "%EXECUTABLE%" run %CMD_LINE_ARGS%
這樣,Tomcat 就會運行在當前命令行窗口。以后再碰到任何致命錯誤,窗口也不會關閉了。使用者可以慢慢看咯。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
