第一时间反应过来就是某个进程占用了IDEA、WebStorm的插件管理器需要绑定的某个端口,但是日志里并没有说占用的是哪一个端口。因为出现这问题当天的上一天还跑得好好的,也没有安装新的应用,或者修改了过应用的监听端口之类的配置。不过这段异常信息提供了一个官方支持的超链接,https://intellij-support.jetbrains.com/hc/en-us/articles/360007568559,于是打开看一下有啥解决办法。打开后,发现有几个解决方法。
删除第三方插件的目录(idea.plugins.path)
重新下载IDE
删除IDE系统目录(idea.system.path)
删除配置目录(idea.config.path)
提交异常堆栈信息给官方
说得很详细,我直接瞄到重点就是说,ide本地会启动一个服务端,这服务端会从6942-6991端口范围内挑选一个可用的端口绑定,并且说了这50个端口全都被占用,可能是网络问题或者是某应用不允许IDE在该范围内的任何端口上绑定,建议通过netsh winsock reset重置一下网络。我第一时间没有重置网络,而是想了一下可能占用这端口范围的进程,立马就想到之前遇到过的保留端口占用问题。于是立马通过以下命令查询一下这端口范围是否属于保留端口
netsh interface ipv4 show excludedportrange protocol=tcp
直接打开cmd一敲,出现很多个范围端口都不能用,然后往下看,果不其然这范围是属于系统保留端口。于是直接按上面的教程关闭了hyper-v,然后重启计算机,再敲命令看保留端口范围,发现已经不包括6942-6991这端口范围了,于是立马再打开WebStorm,正常跑起来了,问题到此为止顺利解决了。
解决方案:
cmd管理员身份运行:
dism.exe /Online /Disable-Feature:Microsoft-Hyper-V
如果实际中还需要用Microsoft-Hyper-V