Node.js 在gulp.watch上重建项目无效

Node.js 在gulp.watch上重建项目无效,node.js,gulp,Node.js,Gulp,我的项目有一个简单的构建步骤,主要是连接几个文件。代码如下所示: var gulp = require('gulp'); var p = require('gulp-load-plugins')(); var srcDir = 'src/'; var src=[/*some files here*/]; var header='',footer=''; gulp.task('build',function(){ gulp.src(src,{cwd:srcDir})

我的项目有一个简单的构建步骤,主要是连接几个文件。代码如下所示:

var gulp = require('gulp');
var p = require('gulp-load-plugins')();

var srcDir = 'src/';
var src=[/*some files here*/];
var header='',footer='';

gulp.task('build',function(){

    gulp.src(src,{cwd:srcDir})
        .pipe(p.concat('sdk.js'))
        .pipe(p.header(header))
        .pipe(p.footer(footer))
        .pipe(p.jshint())
        .pipe(gulp.dest('dist/'));

});

gulp.task('watch',function(){

    gulp.watch('src/**/*.js',['build']);

});

gulp.task('default',['build','watch']);
第一个构建任务按预期工作,执行时间约为550ms:

[gulp] Starting 'build'...
[gulp] Finished 'build' after 541 ms
但是,当我在src文件夹中更改某些内容时,构建任务只需很少的时间,尽管我不使用任何缓存:

[gulp] Starting 'build'...
[gulp] Finished 'build' after 2.37 ms

更重要的是,任务没有任何效果,
dist
目录没有更改。然而,我注意到,当我杀死gulp并再次运行它时,文件会更新。我不知道是gulp的问题还是文件系统本身的问题,我不明白。

事实证明,这个问题与gulp无关——实际上是我的IDE WebStorm的问题。而IDE通常应使用中描述的机制自动更新文件 (不久前我的情况也是如此……)。否则,它将返回到按时间间隔检查所有文件。该文件在我的IDE视图中没有被更新,但它已经被gulp更改,gulp一直在工作。在我通过自动重新加载来解决这个问题之前,使用File | Synchronize将显示文件的最新版本