我有一个gulp脚本,用于使用ng build
构建角度文件。如果我从命令提示符下运行它,它将起作用,但是当我从gulp中运行并出现错误时,它将失败:
您正在运行Node.js的v10.6.0版本,但不支持Angular CLI 8.0+。受支持的官方Node.js版本是10.9或更高版本。请访问https://nodejs.org/en/以查找有关如何更新Node.js.Process的代码终止的说明0.C:***> cmd.exe / c gulp -b“C:***”--color --gulpfile“ C:*** \ Gulpfile.js”默认
我已经全局安装了节点v10.16.3的版本,但是由于某种原因它说我有v10.6.0
。我也在用Gulp 4。
我的gulp文件看起来像这样:
var exec = require('child_process').exec;
gulp.task('buildNg', async function (cb) {
exec('ng build', function (err, stdout, stderr) {
console.log(stdout);
console.log(stderr);
cb(err);
});
})
gulp是否使用自己的node.js版本?我没有看到其他原因。
在此消息中:
您正在运行Node.js的v10.6.0版本,但不支持Angular CLI 8.0+。受支持的官方Node.js版本是10.9或更高版本。请访问https://nodejs.org/en/以找到有关如何更新Node.js的说明
“ v10.6.0”部分是process.version
(Source)的输出
因此,驱动器上的某个位置安装了旧版的Node.js。如果检查PATH
环境变量以及where node
where ng
和where gulp
的输出,则应该能够找到并删除它。
安装nvm(节点版本管理器)。
您可以检查已安装的版本:
nvm list
该版本之后:
nvm use 10.16.3
您需要以管理员身份运行此命令