服务器运行node app.js
报错:
node:events:371
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE: address already in use :::9898
at Server.setupListenHandle [as _listen2] (node:net:1315:16)
at listenInCluster (node:net:1363:12)
at Server.listen (node:net:1450:7)
at Function.listen (/www/admin/localhost_80/wwwroot/vue_api_server/node_modules/express/lib/application.js:618:24)
at Object.<anonymous> (/www/admin/localhost_80/wwwroot/vue_api_server/app.js:125:5)
at Module._compile (node:internal/modules/cjs/loader:1101:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12)
at node:internal/main/run_main_module:17:47
Emitted 'error' event on Server instance at:
at emitErrorNT (node:net:1342:8)
at processTicksAndRejections (node:internal/process/task_queues:83:21) {
code: 'EADDRINUSE',
errno: -98,
syscall: 'listen',
address: '::',
port: 9898
}
解决方案:
首先运行netstat -apn|grep 9898
查询冲突端口(9898)对应的进程pid
[root@hostname vue_api_server]# netstat -apn|grep 9898
tcp6 0 0 :::9898 :::* LISTEN 32121/node
然后使用kill -9 32121
命令关闭该进程:
此时可以正常运行 node app.js