gpt4 book ai didi

node.js - 在 Gulp/Node 中将 jekyll 作为子进程运行

转载 作者:IT老高 更新时间:2023-10-28 23:09:33 26 4
gpt4 key购买 nike

我正在尝试使用 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']);

我做错了什么?我在 Node 0.10.25,Win 7 上。

编辑我以前有一个围绕 ENOENT 错误的谷歌。检查了我的路径,Ruby 在那里,我可以从命令行运行 jekyll。还是不开心。

最佳答案

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

问题在于 Node 如何在 Windows 上查找可执行文件。有关更多详细信息,请查看此答案:

https://stackoverflow.com/a/17537559

简而言之,把 spawn('jekyll', ['build']) 改为 spawn('jekyll.bat', ['build'])让 spawn 工作。

关于node.js - 在 Gulp/Node 中将 jekyll 作为子进程运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21856861/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com