IDEA 端口占用,啟動失敗,提示Web server failed to start. Port 8080 was already in use.


問題描述:

使用IDEA開發Spring Boot項目,今天啟動提示端口占用,導致啟動失敗!(我昨天也是用的這個端口,可以正常啟動)

***************************
APPLICATION FAILED TO START
***************************
Description:
Web server failed to start. Port 8080 was already in use.

Action:
Identify and stop the process that's listening on port 8080 or configure this application to listen on another port.

 

解決思路:

1.更換端口

 既然提示了端口占用,自然想到那就換個端口用唄。於是改為了8081,8082,8083,但都是失敗!

事后發現,換端口是可行的,但是我換的這個恰好不能用!其實我們可以修改application.properties文件 ,改成隨機端口。

// 0 表示是隨機端口
server.port=0

 

2.殺掉占用端口的進程

換端口不行,那就看看這些端口是誰占用了,於是查找8081端口誰占用了?但是發現並沒有進程占用!

> netstat -ano|findstr "8081"

如果查找到了占用端口,可以通過PID,去任務管理器找到對應的進程,然后暴力地直接殺了這個進程(如果你非用這個端口不可)

> netstat -ano|findstr "8080"
TCP    0.0.0.0:8680           0.0.0.0:0              LISTENING       30556

 

3.更改保留端口范圍

顯然我遇到的不是這個情況,經過翻閱,知道還有一種可能就是端口屬於系統保留端口,也會出現這種情況

> netsh interface ipv4 show excludedportrange protocol=tcp

協議 tcp 端口排除范圍

開始端口    結束端口
----------    --------
        80          80
      1057        1156
      1157        1256
      1457        1556
      1757        1856
      1857        1956
      1957        2056
      3830        3929
      3930        4029
      4030        4129
      5357        5357
      7456        7555
      7556        7655
      7681        7780
      7781        7880
      7881        7980
      7981        8080
      8081        8180
...

果不其然,我使用的端口,和嘗試修改的端口都在端口排除范圍內(7981——8080,8081——8180)!!!

如果需要使用這幾個端口,那就只能使用管理的身份運行 CMD ,設置動態端口的范圍,使得這個保留端口的范圍避開我們需要的端口范圍。

// 范圍可以自己設定
> netsh int ipv4 set dynamicport tcp start=49152 num=16383 > netsh int ipv4 set dynamicport udp start=49152 num=16383

然后,重新啟動電腦,曾經被占用的端口就可以繼續使用了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM