Я пытаюсь запустить и остановить залп-веб-сервер в различных задачах глотка, как показано ниже:Запуск и остановки проглатывать-вебсервер
gulp.task('webserver', ['build'], function() {
gulp.src([config.build, config.base])
.pipe(webserver({
livereload: false,
directoryListing: false,
open: true
}));
});
gulp.task('webserver-stop', function() {
var stream = gulp.src([config.build, config.base])
.pipe(webserver());
stream.emit('kill');
});
Я могу успешно запустить сервер, но когда я пытаюсь остановить с помощью gulp webserver-stop
, он дает следующую ошибку.
[19:36:30] Finished 'webserver-stop' after 27 ms
events.js:160
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE 127.0.0.1:8000
at Object.exports._errnoException (util.js:1008:11)
at exports._exceptionWithHostPort (util.js:1031:20)
at Server._listen2 (net.js:1253:14)
at listen (net.js:1289:10)
at net.js:1399:9
at GetAddrInfoReqWrap.asyncCallback [as callback] (dns.js:65:16)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:84:10)
У меня нет большого опыта работы с глотком и JavaScript, прежде чем, Любой помощь, чтобы исправить это, пожалуйста.
Вы пытаетесь запустить сервер на том же порту слишком быстро. вы выбрали событие, чтобы убить слушателя, но, поскольку он асинхронен, вам нужно перезапустить в другом обратном вызове слушателя. –
Я хочу остановить экземпляр сервера, который я начал в указанной выше задаче. Возможно ли это из другой задачи? – varun
Вы пытаетесь запустить «gulp webserver» с одного терминала, а затем «gulp webserver-stop» из другого? –