Appium默认端口4723被占用无法释放:解决方法与原因咨询
解决Appium 4723端口被占用的问题
一、释放4723端口的具体步骤(Windows环境)
因为你是在Windows系统下操作,按以下步骤处理即可:
找到占用端口的进程ID(PID)
打开新的CMD窗口,执行命令:netstat -ano | findstr :4723你会得到类似这样的输出:
TCP 0.0.0.0:4723 0.0.0.0:0 LISTENING 1234最后一列的
1234就是占用4723端口的进程PID。确认对应的进程
接着执行命令查看这个PID对应的进程名:tasklist | findstr 1234通常会显示
node.exe(因为Appium基于Node.js运行),但也可能是其他意外占用端口的程序。强制终止进程
用命令强制结束这个进程:taskkill /F /PID 1234参数
/F表示强制终止,确保进程被彻底关闭。验证端口是否释放
再次执行netstat -ano | findstr :4723,如果没有任何输出,说明端口已经释放,此时就可以正常启动appium(默认4723端口)了。
二、为什么关闭相关程序后端口仍未释放?
常见原因有这几个:
- 进程残留/僵尸进程:之前的Appium实例或者Node.js进程没有正常退出,比如程序崩溃、强制关闭CMD窗口时,进程没有彻底终止,仍在后台偷偷占用端口。
- 其他程序偷偷占用:有些后台服务(比如杀毒软件、代理工具、甚至某些测试框架的辅助进程)可能会占用4723端口,你只关闭了Appium相关程序,但没注意到这些后台进程。
- Windows端口TIME_WAIT状态:如果是
TIME_WAIT状态的占用(不是你报错里的LISTENING),这是TCP连接关闭后的正常状态,通常会在几分钟内自动释放,但你的情况是进程在监听端口,所以主要是进程残留问题。
内容的提问来源于stack exchange,提问作者user7392865




