我试图为一个Node.js应用程序设置一个环境。但我每次都得到这个错误。

“NODE_ENV”不能被识别为内部或外部命令, 可操作的命令或批处理文件。

这意味着什么?我该如何解决这个问题?

我使用Windows,也尝试设置NODE_ENV=development,但运气不好。


当前回答

"set NODE_ENV=production&& nodemon server.js"这个适合我。

其他回答

听起来你的错误来自于试图运行这样的程序(在Linux中可以工作)

NODE_ENV=development node foo.js

在Windows系统中是相同的

SET NODE_ENV=development
node foo.js

在同一个命令shell中运行。你提到set NODE_ENV不工作,但不清楚如何/何时执行它。

对于Windows使用&在命令之间也。就像,

  "scripts": {
    "start": "SET NODE_ENV=development & nodemon app/app.js",
  }

在windows平台上

($env:NODE_ENV="environmentName") - (node file.js)

关闭终端(Ctrl + C),然后运行文件

节点file.js

如果您正在使用Powershell作为终端,请尝试使用Git-Bash。

NODE_ENV=development node foo.js

如果有人像我一样来这里试图找到错误的解决方案:

'env' is not recognized as an internal or external command

我得到这个的原因是我正在将一个angular解决方案从mac开发机器迁移到windows 10桌面。我是这样解决的。

运行NPM install——save-dev cross-env 到我的包里去。Json文件,并改变所有脚本引用从env <whatever>交叉env <whatever>

然后我的命令像:npm run start:some_random_environment_var现在在Windows 10上运行良好。