最近、さまざまなエラーが発生しているため、非常に簡単なテスト プロジェクトgulp.watch
をセットアップしました。エラーが発生する理由がわかりません。プロジェクトには 5 つのファイルが含まれています。
- index.html
- パッケージ.json
- スタイル.css
- スタイル.レス
- gulpfile.js
私は2つのモジュールのみを使用しています:
- ゴクゴク
- ゴクゴク
ここまでは順調ですね。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
更新: github の公式 gulp リポジトリで問題を作成しました。これを解決するために私ができることは何でもしようとしています。
更新 2: Sublime テキスト エディターを使用します。開いているウィンドウが多すぎる (つまり、開いているファイルが多すぎる) と、この問題が発生します。これらのウィンドウのいくつかを閉じると、この問題はなくなります。「これほど多くのウィンドウ/ファイルが開いている」という一貫したシナリオをまだ見つけることができないため、私の観点からは、まだやや謎です。