Node.js提示服务进程已运行、端口被占用且无法调用endpoints怎么办?
踩坑记录:Node.js误报端口占用问题解决
报错信息
启动基础Node.js项目时抛出如下报错:Node.js server process is already running, can't call endpoints
异常表现
- 提前通过进程排查命令确认对应端口未被任何服务占用,但启动项目时仍提示端口已被占用
- 项目启动后无法调用任何服务端点
- 使用nodemon启动项目时,每次修改代码保存后热重载都会抛出端口被占用的报错
根因定位
问题出自项目根目录的.dotenv配置文件,端口变量声明的末尾多写了一个多余的分号:
错误写法示例:PORT=3000;
dotenv加载环境变量时会将分号也识别为端口值的一部分,最终Node.js监听端口时拿到非法端口值,触发了误导性的端口占用报错。
解决方法
- 打开项目根目录下的
.dotenv配置文件 - 找到端口变量声明行,删除端口号末尾多余的分号,调整为正确写法:
PORT=3000 - 重启项目即可恢复正常
内容的提问来源于stack exchange,提问作者iamaword
相关产品推荐
相关产品推荐

