我正在使用插件gulp-server-livereload .
var server = require('gulp-server-livereload');
gulp.src(pathDir).pipe(server({
livereload: true,
directoryListing: true,
open: true,
port: 80
}));
如何停止服务器?
我试过server.restart(),server.kill(),server.reset()
但总是有这样的错误:
未捕获错误:在Server._listen2的exports._exceptionWithHostPort(util.js:1045:20)处的Object.exports._errnoException(util.js:1022:11)处收听EADDRINUSE 127.0.0.1:35729(net.js:1262: 14)在doListening(net.js:1397:7)的atListening(net.js:1397:7)at GetAddrInfoReqWrap.asyncCallback [作为回调](dns.js:62:16)at GetAddrInfoReqWrap.onlookup [as oncomplete]( dns.js:81:1
0)
请帮我解决我的问题或告诉我另一个选项如何实现我的需要 .
1 回答
由于使用该端口的另一个进程,发生此错误 . 它可能只是此进程的先前实例,但是另一个应用程序可能正在使用该端口 .
您将无法使用Node停止此操作,因为它是另一个运行中剩余的进程,并且进程没有相互“管理”的权限 .
在Windows上使用任务管理器来终止节点进程,在Mac上你可以使用Activity Monitor,在Unix / Linux上你可以使用htop或类似的 .
或者在Unix / Linux(包括MacOS)上你可以使用
使用该端口查找进程ID的进程ID,然后将其终止:
要确保您的节点服务器在将来添加事件处理程序时干净地关闭:
并在其中调用代码以关闭您的应用程序 .