node.js - EAddrInUse 用于实时重新加载 - Node js - 在运行 gulp 命令时

标签 node.js port gulp livereload

我为我的mean-io堆栈应用程序运行gulp。

我收到以下错误。

13:15:54] Starting 'server'...
13:15:54] Finished 'server' after 47 ms
13:15:54] Live reload server listening on: 35729

.. Uhoh. Got error listen EADDRINUSE ...
rror: listen EADDRINUSE
   at errnoException (net.js:901:11)
   at Server._listen2 (net.js:1039:14)
   at listen (net.js:1061:10)
   at Server.listen (net.js:1127:5)

我猜端口 35729 正在被其他应用程序使用。我对吗?我还尝试更改 livereload.js 中的端口号。但后来,我遇到了同样的错误。

在下面的文件中,我看到分配了 35729 端口号。请告诉我是否应该在任何地方更改端口号。

 myApp\node_modules\grunt-contrib-watch\node_modules\tiny-lr-fork\lib\public\livereload.js:
321:     this.port = 35829;                
myApp\node_modules\grunt-contrib-watch\node_modules\tiny-lr-fork\lib\server.js
20:   options.port = parseInt(options.port || 35729, 10);             
myApp\node_modules\grunt-contrib-watch\node_modules\tiny-lr-fork\node_modules\noptify\index.js:
21: //       .option('port', '-p', 'Port to listen on (default: 35729)', Number)        
myApp\node_modules\grunt-contrib-watch\node_modules\tiny-lr-fork\bin\tiny-lr:
14:   .option('port', '-p', 'Port to listen on (default: 35729)', Number)
18: opts.port = opts.port || 35729;

谢谢。

最佳答案

使用 gulp 时,我发现有时终止我的进程将无法关闭 livereload 上的连接端口 35729。这会留下一个打开的文件描述符在该端口上监听,这将使我的服务器很难再次启动,因为 gulp一启动就会报错livereload .

有时您不知道拥有该连接的进程的名称,因此很难找到并杀死它。要列出使用 TCP 监听端口的处理器打开的文件,您可以使用 lsof -n -i4TCP:#####命令。在这种情况下,您将得到:

$ lsof -n -i4TCP:35729
COMMAND   PID      USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
node    15723  testuser   24u  IPv6 0x71823b3990749ea5      0t0  TCP *:35729 (LISTEN)

现在您已经有了正在尝试访问的端口上监听的进程的 PID,因此您可以使用以下命令杀死它

$ kill -9 15723

现在正在运行 gulp应该可以正常工作:)

关于node.js - EAddrInUse 用于实时重新加载 - Node js - 在运行 gulp 命令时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26156913/

相关文章:

python - 与 Python 的 sqlite3 模块相比,Node-sqlite3 似乎很慢

node.js - OpenShift + HAProxy session 过多

node.js - NodeJs 网站 TTFB 很高,网站运行很慢

javascript - npm WARN package.json CrackingJS@0.0.1 无存储库字段

node.js - 转发端口从 80 和 443 到 8080

Arduino I²C 库 (Wire) 的 Linux 等价物?

java - ServerSocket close 方法不释放端口

jquery - 如何使用 NPM 和 Gulp 安装 Slick Carousel?

javascript - Gulp 提示决定运行哪些任务?

javascript - gulp-jscs Object.keys 在非对象上调用