我们在使用电脑时,有时候会遇到端口被占用的情况,尤其是在做web开发的时候,经常会与到端口被占用的情况。一般这时候只要关闭编写的所有web程序再重新运行就可以了。但是有时候这个方法会失效,这时我们只要通过控制台杀死占用端口的进程就可以释放端口了。
工具/原料
-
win7 电脑
方法/步骤
-
1
有时候在编程的时候会遇到:java.net.BindException: Address already in use: JVM_Bind 的错误,这是因为端口被占用了。
-
2
解决的方法很多,最简单有效的是重启电脑,我们也可以重启编译器,但是这个方法有时候会失效,可是重启电脑又很麻烦。这时就可以通过控制台来杀死占用端口的进程。
-
首先打开控制台:
方法一:Windows键+r,输入cmd
-
方法二:开始-->搜素“cmd”,点击运行,如下图
-
方法三:开始-->运行,输入cmd
-
在控制台输入: netstat -ano 就可以查看所以的端口使用情况,找到相应的端口(如果端口没被使用,则不会显示),对应到pid。如图(这里使用8080作例子):
-
也可以使用:netstat -ano|findstr 端口号 直接查出占用端口的程序和它的pid
例如:netstat -ano|findstr 8080
-
有的电脑会提示:“'netstat '不是内部或外部命令,也不是可运行的程序或者批处理文件”。
-
那是因为操作不在系统system32文件夹下,所以只需要输入:
cd c:\windows\system32\
回车,然后再接着输入即可。
-
知道pid后,就可以使用taskkill /pid pid 来杀死进程(/pid是参数)。
例如:taskkill /pid 1780
-
如果提示无法终止进程,则用 /f 强制杀死进程:
例如:taskkill /f /pid 1780
-
进程结束后,再运行web程序,就不会再提示端口被占用的情况了。