问题
mac 环境下在 package.json 的 scripts 属性下配置命令 "NODE_ENV=development node ./bin/www,切换到 windows 环境下报错
‘NODE_ENV’ 不是内部或外部命令,也不是可运行的程序
原因
windows 环境不支持 NODE_ENV=XXX 命令
解决方案
- 安装 cross-env, 执行时在命令前加
cross-env
npm install -g cross-env
# 避免执行问题,建议全局安装
命令修改为如下:
cross-env NODE_ENV=development node ./bin/www
- 通过
set命令执行该任务,即执行命令前加set
set NODE_ENV=development&& node ./bin/www
需要注意的是,如果不加反义符号 / 来设置对应的值,那么 && 连接 设置环境 (set NODE_ENV=development) 和 运行对应代码 (node ./bin/www) 时一定要跟在设置后面,否则设置值后面会有空格
如:
set NODE_ENV=development && node ./bin/www
结果
NODE_ENV 的值为 development空格
linux环境设置NODE_ENV
export NODE_ENV=development

本文介绍了在Mac环境下Package.json scripts配置中遇到的NODE_ENV问题,解释了Windows不支持该命令的原因,并提供了使用cross-env和set命令的解决方案。还讲解了如何在Linux和不同环境下设置NODE_ENV变量。
6832

被折叠的 条评论
为什么被折叠?



