Grunt 插件 grunt-exec v2.0.0 不执行简单命令,而 v1.0.1 执行
Grunt plugin grunt-exec v2.0.0 doesn't execute a simple command while v1.0.1 does
我在 Gruntfile.js
中使用具有此配置的 grunt-exec v1.0.1:
grunt.initConfig({
exec: {
tsc: {
cmd: "tsc"
}
},
...
}
...
grunt.loadNpmTasks('grunt-exec');
grunt.registerTask('debug', [
...
'exec:tsc',
...
]);
然后控制台tsc
中的运行grunt debug
正确执行
在另一个具有类似配置的项目中,它安装了最新版本的
grunt-exec
(v.2.0.0) 和 运行 grunt-debug
返回下一个错误:
Running "exec:tsc" (exec) task
>> Failed with: Error: spawn tsc ENOENT
Warning: Task "exec:tsc" failed. Use --force to continue.
使用 -verbose
选项 returns:
Running "exec:tsc" (exec) task
Verifying property exec.tsc exists in config...OK
File: [no files]
tsc
buffer : disabled
timeout : infinite
killSig : SIGTERM
shell : true
command : tsc
args : []
stdio : [ignore,pipe,pipe]
cwd : D:\Pruebas\Angular 2\ATemplate
exitcodes: 0
pid : undefined
>> Failed with: Error: spawn tsc ENOENT
Warning: Task "exec:tsc" failed. Use --force to continue.
我知道我可以使用 grunt-exec 的 v1.0.1 让它工作,但我想知道我必须如何使用 v2.0.0 来完成它。 project documentation in github 没有给我线索。
看起来 grunt-exec
版本 v2.0.0 使用了一些旧版本节点不支持的 ECMAScript 功能。
我看到的第一个是:
Symbol.match, String.prototype.endsWith
在 node < v6.10.2 中不受支持
看这里:http://node.green/
升级您的节点版本以解决此问题。
我在 Gruntfile.js
中使用具有此配置的 grunt-exec v1.0.1:
grunt.initConfig({
exec: {
tsc: {
cmd: "tsc"
}
},
...
}
...
grunt.loadNpmTasks('grunt-exec');
grunt.registerTask('debug', [
...
'exec:tsc',
...
]);
然后控制台tsc
中的运行grunt debug
正确执行
在另一个具有类似配置的项目中,它安装了最新版本的
grunt-exec
(v.2.0.0) 和 运行 grunt-debug
返回下一个错误:
Running "exec:tsc" (exec) task
>> Failed with: Error: spawn tsc ENOENT
Warning: Task "exec:tsc" failed. Use --force to continue.
使用 -verbose
选项 returns:
Running "exec:tsc" (exec) task
Verifying property exec.tsc exists in config...OK
File: [no files]
tsc
buffer : disabled
timeout : infinite
killSig : SIGTERM
shell : true
command : tsc
args : []
stdio : [ignore,pipe,pipe]
cwd : D:\Pruebas\Angular 2\ATemplate
exitcodes: 0
pid : undefined
>> Failed with: Error: spawn tsc ENOENT
Warning: Task "exec:tsc" failed. Use --force to continue.
我知道我可以使用 grunt-exec 的 v1.0.1 让它工作,但我想知道我必须如何使用 v2.0.0 来完成它。 project documentation in github 没有给我线索。
看起来 grunt-exec
版本 v2.0.0 使用了一些旧版本节点不支持的 ECMAScript 功能。
我看到的第一个是:
Symbol.match, String.prototype.endsWith
在 node < v6.10.2 中不受支持
看这里:http://node.green/
升级您的节点版本以解决此问题。