startup.bat啟動(dòng)Tomcat閃退問題原因及解決
出現(xiàn)問題:
安裝了Tomcat之后,開始用著還好好的。莫名其妙
的就很突然出現(xiàn)了一些玄學(xué)問題,某一次開始我雙擊了startup.bat
啟動(dòng)Tomcat時(shí)我的黑窗口就很不給面子的運(yùn)行著運(yùn)行著就閃退
了,隱約間能看到個(gè)異常,可剛看清楚一個(gè)caused by...
黑窗口就已經(jīng)關(guān)閉了。經(jīng)歷了重啟電腦等常規(guī)解決問題的思路后依舊無法解決。
分析問題
既然問題出現(xiàn)在這個(gè)啟動(dòng)后閃退,那就去看一眼啟動(dòng)時(shí)都做了什么?用記事本打開startup.bat
,會(huì)發(fā)現(xiàn)一行腳本是這樣寫的:
set "EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat"
看得出它訪問了本目錄下的catalina.bat
腳本,那就記事本打開catalina.bat
,此時(shí)又發(fā)現(xiàn)里面出現(xiàn)了這些內(nèi)容:
rem Get standard Java environment variables
if exist "%CATALINA_HOME%\bin\setclasspath.bat" goto okSetclasspath
echo Cannot find "%CATALINA_HOME%\bin\setclasspath.bat"
echo This file is needed to run this program
goto end
:okSetclasspath
call "%CATALINA_HOME%\bin\setclasspath.bat" %1
if errorlevel 1 goto end
這說明catalina.bat
又訪問了該目錄下的setclasspath.bat
,而記事本打開setclasspath.bat
后又發(fā)現(xiàn)它又訪問了catalina.bat
。
綜上發(fā)現(xiàn)startup.bat啟動(dòng)流程
為:startup->catalina->setclasspath->catalina
閃退原因:
可見這三個(gè)文件一個(gè)都不能出問題。分析這三個(gè)文件得出閃退問題主要原因
原因一:java環(huán)境變量出問題了
從啟動(dòng)腳本中看得出Tomcat多次訪問了環(huán)境變量信息,其中也包括java環(huán)境(畢竟Tomcat原碼也是java?。9室热?code>檢查jdk的環(huán)境配置。
注意:CATALINA_HOME
是Tomcat的環(huán)境,你可以選擇不配置,不過這樣的話你就只能在bin目錄下啟動(dòng)Tomcat了,換句話來講,配置完Tomcat環(huán)境后你可以把startup.bat
復(fù)制到其他地方雙擊啟動(dòng)。
原因二:端口占用
如果Tomcat已經(jīng)被啟動(dòng)或者8080端口被占用,這自然是不允許的。
你可以直接訪問localhost:8080
看能否訪問Tomcat,如果可以那就說明是已經(jīng)開啟過了的,你可以雙擊shutdown.bat
進(jìn)行關(guān)閉。
或者你可以在黑窗口中執(zhí)行netstat -ano | findstr "8080"
查看8080端口狀態(tài),如果是TIME_WAIT
則說明未被占用。
原因三:你的Tomcat不干凈了
到現(xiàn)在還沒解決,那就有可能是你所下載的Tomcat是一些綠色版、無敵版、xx版
等閹貨或畸形貨。此時(shí)就可在記事本打開startup.bat
,在腳本最后面一行加上pause
,保存后啟動(dòng)進(jìn)行斷點(diǎn)調(diào)試了。(不一定非得像我圖片中加在倒數(shù)第二行,最后一行應(yīng)該也可以,只要不放在前面的邏輯中就行)。
此時(shí)啟動(dòng)效果和之前沒有區(qū)別,只是出了問題后不再會(huì)立刻閃退,而是你在窗口中按任意鍵后才會(huì)退出。OK!現(xiàn)在你就研究屬于你的bug吧(記得解決完問題后把pause刪掉)!
到此這篇關(guān)于startup.bat啟動(dòng)Tomcat閃退問題原因及解決的文章就介紹到這了,更多相關(guān)startup.bat啟動(dòng)Tomcat閃退內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- tomcat雙擊startup.bat一閃而過(閃退)的問題解決
- 解決Tomcat運(yùn)行startup.bat閃退問題方法
- tomcat點(diǎn)擊startup.bat出現(xiàn)閃退的原因及解決方法
- Tomcat執(zhí)行startup.bat出現(xiàn)閃退的可能原因及解決
- 如何解決點(diǎn)擊 tomcat9.exe閃退的問題
- 詳解Tomcat雙擊startup.bat閃退的解決方法
- 關(guān)于tomcat點(diǎn)擊startup.bat后閃退問題的解決辦法
- 直接雙擊啟動(dòng)tomcat中的startup.bat閃退原因及解決方法
- Tomcat 啟動(dòng)閃退常見問題18種解決方法及示例
相關(guān)文章
詳解Tomcat多域名配置(多個(gè)項(xiàng)目共用80端口)
本篇文章主要介紹了Tomcat多域名配置(多個(gè)項(xiàng)目共用80端口),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06Idea中tomcat啟動(dòng)源碼調(diào)試進(jìn)入到tomcat內(nèi)部進(jìn)行調(diào)試的方法
這篇文章主要介紹了Idea中tomcat啟動(dòng)源碼調(diào)試進(jìn)入到tomcat內(nèi)部進(jìn)行調(diào)試的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09Linux上tomcat的虛擬主機(jī)IP映射配置(圖片服務(wù)器)
有時(shí)候我們會(huì)使用tomcat作為一個(gè)圖片資源服務(wù)器,本文主要介紹了Linux上tomcat的虛擬主機(jī)IP映射配置,通過tomcat服務(wù)器來訪問我們的圖片,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08tomcat中Servlet的工作機(jī)制詳細(xì)介紹
這篇文章主要介紹了tomcat中Servlet的工作機(jī)制詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下2016-12-12關(guān)于Tomcat啟動(dòng)失敗報(bào)循環(huán)依賴的問題解決(AncestorAxisIterator)
這篇文章主要介紹了關(guān)于Tomcat啟動(dòng)失敗報(bào)循環(huán)依賴的問題解決(AncestorAxisIterator),Tomcat 服務(wù)器是一個(gè)免費(fèi)的開放源代碼的Web 應(yīng)用服務(wù)器,屬于輕量級(jí)應(yīng)用服務(wù)器,需要的朋友可以參考下2023-07-07Windows系統(tǒng)下安裝Tomcat服務(wù)器和配置虛擬目錄的方法
這篇文章主要介紹了Windows系統(tǒng)下安裝Tomcat服務(wù)器和配置虛擬目錄的方法,Tomcat服務(wù)器用于驅(qū)動(dòng)JSP和Servlet程序,需要的朋友可以參考下2015-12-12tomcat正常啟動(dòng)但網(wǎng)頁卻無法訪問的幾種解決方法
本文主要介紹了tomcat正常啟動(dòng)但網(wǎng)頁卻無法訪問的幾種解決方法,根據(jù)自身使用情況和一些網(wǎng)上搜索到的結(jié)果,匯總整理一下,具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05Tomcat6.0與windows 2003 server 的IIS服務(wù)器集成
本例主要講解Tomcat6.0與windows 2003 server 的IIS服務(wù)器集成的問題,用到的工具版 本如下:jdk是6.0、Tomcat 6.0、windows 2003 server 的IIS。2009-08-08tomcat異常解決(Invalid character found in the request target. Th
這篇文章主要介紹了tomcat 異常的解決方案,幫助大家排查錯(cuò)誤,保持服務(wù)器的穩(wěn)定,感興趣的朋友可以了解下2020-10-10