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

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

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

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


当前回答

上面的大多数答案对我没有帮助。

帮助我的是NODE_ENV=production&& nodemon app/app.js

注意空格。 祝你好运。

其他回答

set NODE_ENV=**production&** nodemon server.js &必须连接,因为如果在生产和&之间留出空间,那么 NODE_ENV将在最后包含空格,就像'production ' 所以只需删除production和&之间的空格,并在&之后添加空格

这对我来说很管用,因为这很容易解决。我克隆了一个存储库,它是在WINDOWS中开发的,但我使用MACOS。

如果你使用的是windows,使用SET作为前缀:

"scripts": {
    "dev": "SET NODE_ENV=development && nodemon index.js",
  },

但是如果你使用的是MacOS,移除SET关键字并使用:

"scripts": {
    "dev": "NODE_ENV=development && nodemon index.js",
  },

简单地说

如果你使用的是windows,在运行脚本之前使用SET前缀,并从MacOS(可能也是LINUX)中删除SET,如上所示。

我有同样的问题,在windows平台上,我只是运行下面的命令

npm install -g win-node-env

一切正常

"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不工作,但不清楚如何/何时执行它。