从git下拉后,我试图在本地运行一个前端项目。之后,我得到以下错误:
vents.js:183
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE 127.0.0.1:8081
at Object._errnoException (util.js:1022:11)
at _exceptionWithHostPort (util.js:1044:20)
at Server.setupListenHandle [as _listen2] (net.js:1351:14)
at listenInCluster (net.js:1392:12)
at GetAddrInfoReqWrap.doListen [as callback] (net.js:1501:7)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:97:10)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] dev: `webpack-dev-server --hot`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
我当时想,“等一下,我什么也没跑!!”。还是我?运行后
sudo lsof -i :8081
我看见:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
cma 265 root 16u IPv6 0x2756c3c2bce3e369 0t0 TCP *:sunproxyadmin (LISTEN)
我看到webpack-dev-server试图在与sunproxyadmin相同的端口上启动
...
devServer: {
port: 8081,
hot: true,
},
...
好吧,那么
sunproxyadmin
是什么,谁是cma
(下车我的草坪!!!)(顺便说一句,我知道如何杀死它)
PS:有些堆栈溢出点较多的人同意,请为sunproxyadmin,EADDRINUSE和cma创建标签
最佳答案
深入研究后,我发现cma是使用sunproxyadmin的Mcaffe的代理。
我认为我只能找出如何更改其使用的端口,但后来我无权更改其在我的计算机上使用的端口,因为它是由我们的IT部门设置的,而流程本身是由root用户启动的:
https://community.mcafee.com/t5/ePolicy-Orchestrator/Linux-CMA-Agent-port-chnage/td-p/314596
关于该主题的大多数搜索都由于某些原因而导致react问题,这可能就是为什么我找到了杀死它的解决方案here:
sudo lsof -n -i4TCP:8081 # get the process' PID
sudo launchctl list | grep 5693 # find the launchd endpoint
sudo launchctl remove com.mcafee.agent.macmn
因此最终,除更改端口webpack dev服务器启动外,杀死它是我唯一的选择。