当你在Node.js应用程序中遇到EADDRINUSE
错误时,这意味着你尝试启动的服务器端口已经被其他进程占用。EADDRINUSE
是"Error Address in Use"的缩写。为了解决这个问题,你可以尝试以下方法:
app.listen(port)
或server.listen(port)
),将端口号更改为其他未被占用的端口。const port = process.env.PORT || 3001; // 将端口号从3000更改为3001或其他未被占用的端口
app.listen(port, () => {
console.log(`Server is running on port ${port}`);
});
在Windows上:
netstat -ano | findstr :端口号
(将端口号替换为实际端口号),例如:netstat -ano | findstr :3000
。taskkill /PID 进程ID /F
(将进程ID替换为实际进程ID),例如:taskkill /PID 12345 /F
。在Linux和macOS上:
lsof -i :端口号
(将端口号替换为实际端口号),例如:lsof -i :3000
。kill 进程ID
(将进程ID替换为实际进程ID),例如:kill 12345
。完成以上步骤后,端口应该已经释放,你可以重新启动Node.js应用程序。