当我调用我的某个gulp任务时,我收到了"FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory
"的错误信息。
我在这个问题中发现,可以向 node 传递一个参数来增加默认内存限制:node --max-old-space-size=2000 server.js
。但是我该如何告诉 gulp 向 node.exe 传递参数呢?这里列出了我可以传递给 gulp 的标志列表,我希望能找到一个在 gulp 启动任务时会传递给 node 的标志。
引起问题的任务:
var gulp = require('gulp');
var imagemin = require('gulp-imagemin');
gulp.task('imagemin', function() {
var OUTPUT_FOLDER = '../Release_Prepared/';
var extensionsToOptimize = ['gif', 'jpeg', 'jpg', 'png', 'svg'];
var glob = [];
for(var i=0; extensionsToOptimize.length; i++){
glob.push(OUTPUT_FOLDER + '**/*.' + extensionsToOptimize[i]);
}
gulp.src(glob)
.pipe(imagemin({
verbose: true
}))
.pipe(gulp.dest(OUTPUT_FOLDER));
});
node --max-old-space-size=2000 server.js
没有问题,它可以很好地理解programName --parameter
。我的问题是如何从gulp任务中传递node参数? - KVM