win11下,启动springboot时,提示端口被占用的处理方式
注:此操作可能存在风险!!
在启动springboot时,提示端口被占用。于是执行
#查看所有的占用的端口
netstat -ano | findStr 8080
结果发现并没有什么进程占据8080端口。再次执行:
# 查看系统保留端口
netsh int ipv4 show excludedportrange protocol=tcp
发现8080在占用的范围内。
这时候,按正常处理方式,应该是:
# 将预留的端口释放
netsh int ipv4 add excludedportrange startport=8080 numberofports=1 protocol=tcp
这样就可以了。但是这里提示另一个和序正在使用此文件,无法访问一类的提示。
后来发现应该是打开了docker-desktop,导致了这些端口被预留。注:这些端口并未真正被使用,只是先占上了。
经过查询后,发现可以使用以下方式来释放端口:
# 强制释放预留的端口
net stop winnat
net start winnat
这个是重启winnat服务,让它释放了占用的端口。
注:我这里因为docker中并未真正使用这些端口,才可以释放,否则可能会影响正在使用这些端口的程序,请注意!!!!在重新启动这个服务时,请详细评估风险。