You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

启动Expo应用时报错EADDRINUSE: 地址:::19000已被占用如何解决?

Expo启动报错EADDRINUSE:19000解决方案

核心报错信息:

error listen EADDRINUSE: address already in use :::19000
Metro Bundler process exited with code 1
npm ERR! code ELIFECYCLE

该报错由Metro Bundler默认监听的19000端口被其他进程占用导致,可按以下方案解决:

方案1:杀死占用19000端口的进程

根据你使用的操作系统执行对应操作:

  • Windows系统
    1. 打开命令提示符或PowerShell,执行命令查看占用19000端口的进程PID:
      netstat -ano | findstr :19000
      
    2. 命令返回结果的最后一列数字即为对应PID,执行以下命令杀死进程(将<PID>替换为你查到的PID):
      taskkill /PID <PID> /F
      
    3. 重新执行expo start启动项目即可。
  • Mac/Linux系统
    1. 打开终端,执行命令查看占用19000端口的进程PID:
      lsof -i :19000
      
    2. 返回结果中PID列的数字即为进程ID,执行以下命令杀死进程:
      kill -9 <PID>
      
    3. 重新执行expo start启动项目即可。

方案2:指定其他端口启动

如果不想终止占用19000端口的进程,可以在启动时手动指定端口,命令如下(可替换为任意未被占用的端口号):

expo start --port 19003

方案3:清理残留进程与缓存

如果是之前的Expo进程异常退出导致的端口占用,可先执行以下操作:

  • 关闭所有已打开的Expo开发者工具页面、模拟器窗口
  • 在任务管理器(Windows)或活动监视器(Mac)中结束残留的node.exe/Node.js进程
  • 执行以下命令清理Expo缓存后重启:
    expo start -c
    

如果以上方案都无效,可以尝试暂时关闭系统代理、VPN后再启动,避免网络工具占用相关端口。


内容的提问来源于stack exchange,提问作者Aman Dwivedi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 09:51:00