Several ports (8005, 8080, 8009) required by Tomcat v7.0 Server at localhost are already in use.

Windows下Tomcat報端口被佔用問題

平時都好好的tomcat,今天突然報出來Several ports (8005, 8080, 8009) required by Tomcat v7.0 Server at localhost are already in use. The server may already be running in another process, or a system process may be using the port. To start this server you will need to stop the other process or change the port number(s).

這個,有以下幾種解決方案:

     1、端口被佔用,可以用cmd(window+R)

第一步:輸入netstat -ano

也可以輸入netstat -aon|findstr "端口號"

第二步:tasklist|findstr "查詢出的 listening",剛剛查詢的是7912

第三步:taskkill /f /t /im 查詢出佔用程序名稱

可以看到8080的進程被kill了。

     2、Eclipse非正常關閉,可以打開任務管理器,結束“javaw.exe”這個進程。

     3、也可以修改tomcat的端口號:tomcat目錄/conf下server.xml

用文本格式打開,將其中的8080端口修改成8888或者其他

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

     4、若以上方法都不好使,那麼恭喜你,跟我一樣。找到tomcat目錄/bin下,運行startup.bat開啓tomcat(linux運行              startup.sh 也可先運行下shutdown.bat關閉tomcat),若出現:

Unrecognized Windows Sockets error: 10106:create這個錯誤

注意eclipse的tomcat裏不能爲空,需添加項目纔有此錯誤

解決這個問題:

第一步:以管理員身份打開命令提示符

第二步:輸入 netsh winsock reset  

第三步:重啓電腦就可以了

詳細:用管理員運行cmd,則是開始-附件-命令提示符-右鍵-以管理員身份運行

 

若出現拒絕訪問,則關閉系統所有殺毒軟件,再輸入netsh winsock reset

成功則是:

“netsh winsock reset”指令,會把底層傳輸協議無關的高層數據傳輸編程接口恢復到默認狀態。

1、netsh winsock reset命令,是計算機的一條指令,作用是重置 Winsock 目錄。這個命令可以重新初始化網絡環境,以解決由於軟件衝突、病毒原因造成的參數錯誤問題。

2、Winsock是Windows網絡編程接口,reset是對Winsock的重置操作。

3、netsh是一個能夠通過命令行操作幾乎所有網絡相關設置的接口,比如設置IP,DNS,網卡,無線網絡等。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章