这个错误表明端口 3000 已经被其他进程占用了。要解决这个问题,你可以尝试以下方法:
- 更改应用的端口号:
在你的 egg.js 项目中,找到 config 文件夹下的 config.default.js 文件,修改端口号:
module.exports = appInfo => {
const config = {};
// 修改端口号,例如改为 3001
config.cluster = {
listen: {
path: '',
port: 3001,
hostname: '0.0.0.0',
},
};
return config;
};
然后重启你的应用。
- 找到占用端口 3000 的进程并停止它:
首先,你需要找到占用端口 3000 的进程。根据你的操作系统,可以使用以下命令:
- 对于 macOS/Linux:
sudo lsof -i :3000
- 对于 Windows:
netstat -aon | findstr 3000
这些命令将显示占用端口 3000 的进程及其 PID。然后,你可以使用以下命令终止该进程:
- 对于 macOS/Linux:
sudo kill -9 <PID>
- 对于 Windows:
taskkill /F /PID <PID>
将 <PID> 替换为实际的进程 ID。
完成以上操作后,你可以重新启动你的 egg.js 应用,应该不会再出现 EADDRINUSE 错误。