node.js – 运行jekyll作为Gulp / Node中的子进程

我正在使用Gulp.js建立一个jekyll网站我读过,我不应该在 this question使用一个插件.

我一直在调查使用一个子进程建议,但我不断得到一个错误

events.js:72
    throw er; // Unhandled 'error' event
          ^
Error: spawn ENOENT
    at errnoException (child_process.js:988:11)
    at Process.ChildProcess._handle.onexit (child_process.js:779:34)

这是我的gulp文件

var gulp = require('gulp');
var spawn = require('child_process').spawn;
var gutil = require('gulp-util');

gulp.task('jekyll',function (){
    spawn('jekyll',['build'],{stdio: 'inherit'});
});

gulp.task('default',['jekyll']);

我究竟做错了什么?我在节点0.10.25,Win 7.

编辑
以前有一个关于ENOENT错误的谷歌.检查了我的路径,Ruby在那里,我可以从命令行运行jekyll.还没有喜悦

解决方法

我也遇到这个问题,找到了使用spawn的答案.

问题在于如何在Windows上查找可执行文件.更多细节请看这个答案:

https://stackoverflow.com/a/17537559

简而言之,改变产卵(‘jekyll’,[‘build’])以产生(‘jekyll.bat’,[‘build’]),以便产卵.

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...