'npm'不被识别为内部或外部命令,可操作的程序或batch file,但它在我的envpath中

我试图在Windows上启动一个我在Linux上编写的node.js模块。

我已经设置了enjpath到nodejs,我已经安装了我的依赖关系,当我单独使用npm它正在工作。 但是当我启动我的模块时,它告诉我这个:

我的PowerShell提示

这是我的package.json的脚本:

在这里输入图像说明

有人可以向我解释什么是错的?

提前致谢。

您的问题与cmd PowerShell和其他Windowsterminal如何处理单引号string有关,而单引号string又会错误地parsing为node.js中的process.argv

这在错误信息中是指示性的:

'npm不被认可(…)

这显示了一个领先的预期命令npm前面

作为解决方法,请尝试在package.json的启动脚本中使用转义的双引号而不是单引号:

 "start": "nodemon lib/index.js --exec \"npm run lint && babel-node --presets es2015,stage-2\" "