在powershell和cmd中,npm执行下面一package.json中的命令,去打包项目时,报了如下错误
pnpm run analyz > webpack-vue@1.0.0 analyz E:\ASSA\演示demo\webpack-vue > NODE_ENV=production npm_config_report=true npm run build 'NODE_ENV' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 ELIFECYCLE Command failed with exit code 1.
1.package.json中的配置
"scripts": {
"dev": "webpack serve",
"build": "webpack --config webpack.config.js",
"analyz": "NODE_ENV=production npm_config_report=true npm run build"
},
原因:
NODE_ENV=production 是两条命令合并成一个,在powershell和cmd中不被支持,
在Mac中终端或Linux的shell支持的操作。
建议直接使用第二种方法
-
解决方法一
修改package.json在NODE_ENV前加上set
"scripts": {
// ...
"analyz": "set NODE_ENV=production npm_config_report=true npm run build"
},
-
解决方法二
1.安装 cross-env
pnpm install cross-env -D
2.修改package.json在NODE_ENV前加上cross-env
"scripts": {
// ...
"analyz": "cross-env NODE_ENV=production npm_config_report=true npm run build"
}