簡體   English   中英

gulp.watch-錯誤:觀看null EMFILE

[英]gulp.watch - Error: watch null EMFILE

我最近在gulp.watch遇到各種錯誤,因此我建立了一個非常簡單的測試項目。 對於為什么會出錯我一無所知。 該項目包含5個文件:

  1. index.html
  2. package.json
  3. styles.css
  4. 無樣式
  5. gulpfile.js

我只使用兩個模塊:

  1. 吞咽
  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文本編輯器。 打開太多窗口(即打開太多文件)將觸發此問題。 當我關閉其中一些窗口時,此問題消失了。 我仍然找不到一致的“打開許多窗口/文件”的情況,因此,從我的角度來看,這仍然是個謎。

我對你也有同樣的問題。 最后我發現實際的問題是,如果使用sublime .命令打開項目目錄sublime . 在終端下,然后運行gulp,該gulp將導致錯誤。

因此,您可以先打開sublime應用程序,然后加載您的項目目錄,最后在終端中啟動gulp。 一切都會好起來的!

希望對你有幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM