Node.js 当作为节点子进程运行时,Jekyll生成未关闭
我正在尝试以gulp文件中的节点子进程的形式运行Node.js 当作为节点子进程运行时,Jekyll生成未关闭,node.js,jekyll,gulp,child-process,Node.js,Jekyll,Gulp,Child Process,我正在尝试以gulp文件中的节点子进程的形式运行jekyllbuild。问题是,jekyllbuild似乎运行了多次,而且从未关闭 我能想到的唯一一件事可能是,jekyll build过程修改了标记文件,这将导致gulp.watch再次运行。但我看不到任何证据 如果我只是从终端运行jekyll build,我会得到以下结果: Configuration file: /home/user_name/projects/project_name/_config.yml Sour
jekyllbuild
。问题是,jekyllbuild
似乎运行了多次,而且从未关闭
我能想到的唯一一件事可能是,jekyll build
过程修改了标记文件,这将导致gulp.watch
再次运行。但我看不到任何证据
如果我只是从终端运行jekyll build
,我会得到以下结果:
Configuration file: /home/user_name/projects/project_name/_config.yml
Source: /home/user_name/projects/project_name
Destination: /home/user_name/projects/project_name/_site
Generating...
done.
Auto-regeneration: disabled. Use --watch to enable.
[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
Source: /home/user_name/projects/project_name
Destination: /home/user_name/projects/project_name/_site
Generating...
[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
Source: /home/user_name/projects/project_name
Destination: /home/user_name/projects/project_name/_site
Generating...
[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
Source: /home/user_name/projects/project_name
Destination: /home/user_name/projects/project_name/_site
Generating...
当我将其作为节点子进程运行时,会得到以下结果:
Configuration file: /home/user_name/projects/project_name/_config.yml
Source: /home/user_name/projects/project_name
Destination: /home/user_name/projects/project_name/_site
Generating...
done.
Auto-regeneration: disabled. Use --watch to enable.
[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
Source: /home/user_name/projects/project_name
Destination: /home/user_name/projects/project_name/_site
Generating...
[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
Source: /home/user_name/projects/project_name
Destination: /home/user_name/projects/project_name/_site
Generating...
[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
Source: /home/user_name/projects/project_name
Destination: /home/user_name/projects/project_name/_site
Generating...
它像那样重复了20多次,然后就停止了,之后就什么也不输出了
这是我的gulpfile.js:
var gulp = require('gulp');
var spawn = require('child_process').spawn;
var gutil = require('gulp-util');
gulp.task('default', function () {
gulp.watch('**/*.md', function (e) {
var cp = spawn('jekyll', ['build']),
stdout = '',
stderr = '';
cp.stdout.setEncoding('utf8');
cp.stdout.on('data', function (data) {
stdout += data;
gutil.log(data);
});
cp.stderr.setEncoding('utf8');
cp.stderr.on('data', function (data) {
stderr += data;
gutil.log(gutil.colors.red(data));
});
cp.on('error', function (err) {
gutil.log(gutil.colors.red('gulp-jekyll', err));
});
cp.on('close', function (code) {
gutil.log('Done with exit code ', code);
gutil.log('Jekyll has completed the build process.');
});
});
});
好的,问题似乎是我忘了在jekyll
\u config.yml
文件中排除我的节点模块
目录。一定有太多的降价文件,让杰基尔不知所措
尽管如此,我还是不知道为什么它们一开始就触发了gulp.watch
,因为它们没有经过编辑