我在使用idea运行之前的web项目时,idea突然抽抽了,说端口占用。
本文为了记录bug的解决过程。
一、常见情况【1099端口真的被占用了】
这是最好解决的情况
打开命令行(cmd)窗口,WIN+R
快捷键输入cmd
运行即可。
在命令行窗口输入netstat -aon | findstr 1099
后面就是占用该端口进程的PID了。
1、使用命令行kill掉进程
在命令行窗口使用taskkill -f -pid 进程PID
将占用端口的进程kill掉,如:我这里就是taskkill -f -pid 18152
。之后再运行TomCat就可以了。
2、任务管理器大法关闭进程
使用ctrl+shift+esc
快捷键打开任务管理器。
如果打开是简要信息,如下图,点击展开详细信息:
在详细信息中根据进程PID找到占用端口的进程,右键结束进程
二、端口并未占用
这个就恶心了,我遇到的就是这种情况。
尝试过多种方法后,发现是Hyper-V开启导致的端口占用。
原因: 当开启Hyper-V后,系统会默认为Hyper-V保留一些端口,所以才会出现,没有进程占用端口,却报端口被占用的error。
解决: 将Hyper-V功能关闭即可。也可以改掉tcp端口的范围,但会不会造成其他影响就不知道了。