1. 程式人生 > >Tomcat8仍有一閃而退,埠被佔用

Tomcat8仍有一閃而退,埠被佔用

繼Failed installing tomcat8 service問題之後,tomcat8一閃而退的問題只是短暫被解決,但後來又出現了。檢視資料發現埠8080又被佔用了,扎心了老鐵,咋安裝個Tomcat這麼坎坷。

1、首先,檢視報錯原因。修改startup.bat內容,如下圖把start改為run;末行加多一個pause以免一閃而退。

       --報錯日誌也可以檢視catalina.log檔案。我的報錯如下白色背景圖。

2、管理員執行cmd;

3、 輸入netstat -aon|findstr "8080" ,檢視佔用本埠的PID號;

4、輸入tasklist|findstr "5188",找到此PID號對應的程序;

5、輸入taskkill /f /t /im Tomcat8.exe, 幹掉此程序,Tomcat8.exe名稱根據實際情況填寫。

6、修改startup.bat回原來的設定;run-->start。



參考文章:https://blog.csdn.net/lgx521lgx5230/article/details/47293871

安裝了tomcat8,啟動時報異常關鍵異常資訊如下:

05-Aug-2015 09:33:55.290 SEVERE [main] org.apache.coyote.AbstractProtocol.init F
ailed to initialize end point associated with ProtocolHandler ["http-apr-8088"]
 java.lang.Exception: Socket bind failed: [730048] ?????????×???(Э?é/???????/?
??)????í??
        at org.apache.tomcat.util.net.AprEndpoint.bind(AprEndpoint.java:471)

經查,埠8088已被佔用,查詢後解決辦法如下:

第一步:啟動CMD命令視窗

第二步:檢視指定端口占用情況,輸入命令:netstat -aon|findstr "8088"

結果顯示如下:

 協議    本地地址                     外部地址               狀態                   PID
  TCP    127.0.0.1:
8088           0.0.0.0:0              LISTENING      5188

第三步:檢視PID對應的程序,輸入命令:tasklist|findstr "5188"

結果顯示如下:

 映像名稱                  PID                 會話名              會話#       記憶體使用
 ========================= ======== ================
  Tomcat8.exe           5188              Console                 0     16,064 K 

第四步:結束程序,輸入命令:taskkill /f /t /im Tomcat8.exe

問題解決。

===============

引起這個問題的原因是tomcat安裝後,tomcat後臺服務會開機自動啟動,再手動啟動tomcat的時候就會異常,所以需要把開機啟動刪除(360工具等可以解決)。