Я потратил часы, пытаясь решить это самостоятельно, ища похожие проблемы, но без всякой удачи, поэтому я пришел к выводу, что единственное, что нужно сделать, - это разместить здесь вопрос.Задача часов Gulp вызывает ошибку EBUSY при запуске процесса mongod
Я разрабатываю бэкэнд для веб-приложения, где я использую MongoDB для сохранения данных. Я использую Gulp и имею задачу просмотра, которая следит за изменениями в js-файлах. Я также использую браузеры, поэтому всякий раз, когда я запускаю gulp в терминале, веб-приложение будет загружаться автоматически в браузере. Прежде чем запустить gulp, я запускаю процесс mongod, используя команду mongod -dbpath. Пока все хорошо, и никаких проблем.
Но когда я затем запустить глотка, задача часы выдает ошибку EBUSY:
Ошибка: EBUSY: ресурс занят или заблокирован, ScanDir «H: \ Источник \ приложение \ сервер \ DB \ mongoDbDir \ mongod. запирать»
Это мой глоток задача:
gulp.task('watch:server', ['server:start'], function() {
var config = require('../../../config')().watch.server;
console.log('CALLING GULP WATCH');
gulp.watch(config.scripts, ['server:restart']); // throws the error
});
В config.scripts просто ссылаются на js-файлы в некоторых папках (включая каталог путей mongo db, хотя здесь нет js-файлов). Другие задачи, выполняющиеся являются:
// run server
gulp.task('server:start', ['build:server'], function() {
var config = require('../../../config')().entrypoint.server;
server.listen({path: config.source, execArgv: ['--debug=5859']});
});
и
// restart server if entrypoint changed
gulp.task('server:restart', ['typescript:server'], function() {
server.restart();
});
«Сервер», используемый здесь, является узлом Js модуль из модуля Глоток-разработки-сервера. И ошибка я получаю показано на рисунке:
Error shown in WebStorm Ide's terminal when running gulp
Я нашел это: Grunt Serve watch throws EBUSY warning over mongod.lock
Это было для Grunt, хотя, но я старался не обращать внимания на пути к моей MongoDB в и это не помогло.
Я действительно застрял здесь, и я не могу использовать веб-приложение, пока эта ошибка существует, потому что сервер разработки ничего не ответит.
Может ли кто-нибудь помочь мне с этим, может быть?