最近我一直收到gulp.watch
的各種錯誤,所以我建立了一個非常簡單的測試項目。我無能爲力,爲什麼我得到錯誤。該項目包含5個文件:gulp.watch - Error:Watch null EMFILE
- 的index.html
- 的package.json
- styles.css的
- styles.less
- gulpfile.js
我只使用兩個模塊:
- gu LP
- 一飲而盡少
到目前爲止好。以下是gulpfile.js的內容:
var gulp = require('gulp');
var less = require('gulp-less');
gulp.task('default', function() {
gulp.watch('styles.less', ['styles']);
});
gulp.task('styles', function() {
return gulp.src('styles.less')
.pipe(less())
.pipe(gulp.dest(''));
});
我希望在終端上運行gulp
將開始收看過程。相反,它產生以下錯誤(我複製線換線我在終端看到的):
[19:19:30] Using gulpfile ~/Projects/Sandbox/fred/gulpfile.js
[19:19:30] Starting 'default'...
2016-01-23 19:19 gulp[41595] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-21)
[19:19:30] Finished 'default' after 7.91 ms
events.js:141
throw er; // Unhandled 'error' event
^
Error: watch null EMFILE
at exports._errnoException (util.js:856:11)
at FSEvent.FSWatcher._handle.onchange (fs.js:1296:21)
我已經看到在其他項目中這個錯誤,所以要確保我沒」我瘋了,我掀起了我能想到的最簡單的用例。爲了記錄在案,這裏有一切的版本我跑:
- NPM:3.5.3
- 節點:5.4.1
- 一飲而盡:
- CLI版本:3.9.0
- 本地版本:3.9.0
- 一飲而盡少:3.0.5
更新:我已經created an issue在github官方gulp回購。盡我所能解決這個問題。
UPDATE 2:我使用Sublime文本編輯器。打開太多窗口(即打開太多文件)將觸發此問題。當我關閉一些窗口時,這個問題就消失了。我仍然無法找到一致的「這麼多windows /文件打開」的場景,所以從我的觀點來看,它仍然有些神祕。