WebStorm中的Gulp错误:无法列出gulp任务

Ром*_*хин 5 javascript node.js npm webstorm gulp

我的WebStorm已停止读取并运行gulp任务.

它工作正常,直到上周五.

这是控制台中出现的错误:

无法在questionary/gulpfile.js中列出gulp任务:无法解析JSON - >第1行第5列的未终止数组路径$ [1]*编辑设置

$/usr/local/bin/node /Users/rkon2006/Projects/My/questionary/node_modules/gulp/bin/gulp.js --no-color --gulpfile/Users/rkon2006/Projects/My/questionary/gulpfile. js --tasks-json [17:26:14]使用gulpfile~/Projects/My/questionary/gulpfile.js [17:26:14]开始'默认'...默认任务...

这是我的gulpfile.js中的代码(即使使用此代码也无法启动):

var gulp = require('gulp');

gulp.task('default', function () {
    console.log('Default task...');
});
Run Code Online (Sandbox Code Playgroud)

进程以退出代码0结束

我使用gulp v4.0,节点js 4.1.1(尝试了从0.10.28到4.1.1的不同版本)和npm 2.14.4.

你有什么想法吗?

cha*_*alo 17

安装更新版本的节点后,我遇到了与webstorm相同的问题.我的解决方案如下:

webstorm显示任务列表的块Gulp中,单击cog图标选择gulp设置,在"Gulp package"部分中添加本地 gulp 的路径(项目中node_modules内的gulp).

路径示例:yourproject \node_modules\gulp


len*_*ena 1

问题是,在评估 gulpfile.js 时,但在运行任何 gulp 任务之前,某些文本会被记录到标准输出流(即日志记录发生在 gulp 任务之外);可能的解决方法:

  • 避免在 gulp 任务之外将任何内容记录到标准输出流。

或者

  • 如果标准输出流是为了列出任务而启动的,则不要记录到标准输出流,例如:
if (!isListingTasks()) {
    console.log('[my info]');
}

function isListingTasks() {
    return process.argv[process.argv.length - 1] === '--tasks-json';
}
Run Code Online (Sandbox Code Playgroud)