' NODE_ENV'不被视为内部或外部命令

时间:2017-04-07 18:00:52

标签: javascript node.js windows backend

我有一个在linux上完美运行的应用程序,但是当我在Windows上执行它时,我得到了这个错误。

'NODE_ENV' is not recognized as an internal or external command,
operable program or batch file.

'NODE_ENV' is not recognized as an internal or external command,operable program or batch file.

npm
 ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! aaa@1.0.0 webpack-watch: `NODE_ENV='debug' webpack --progress -d -colors --watch`
npm ERR! Exit status 1
npm ERR!

我在cmd中试过这个。

SET NODE_ENV=debug

我在这里找到“NODE_ENV” is not recognized as an internal or external command

这里有代码片段package.json,我想这是我的错误。

"webpack-watch": "NODE_ENV='debug' webpack --progress -d --colors --watch",
"server-watch": "NODE_ENV='debug' nodemon backend/server.js"

2 个答案:

答案 0 :(得分:3)

Windows不了解语法var=value cmd1 arg1。您需要调整NPM运行任务以使用Windows'语法:

"webpack-watch-win": "set NODE_ENV=debug & webpack ..."
"server-watch-win": "set NODE_ENV=debug & nodemon ..."

....但是下游可能会遇到更多错误。但这应该至少让你通过环境变量声明。节点强烈植根于* nix shell,而不是cmd.exe。

答案 1 :(得分:-1)

使用导出设置NODE_ENV。所以在你的package.json中添加你的脚本块

    "scripts":{
        "webpack-watch": "export NODE_ENV='debug' && webpack --progress -d --colors --watch",
        "server-watch": "export NODE_ENV='debug' && nodemon backend/server.js"
    }