Apache Superset插件执行npm run build报错求助
问题原因与解决办法
这个报错是因为你在Windows环境下执行构建命令,而BABEL_OUTPUT=esm是类Unix系统(Linux/macOS)的shell语法,Windows的CMD或PowerShell不支持这种在命令前直接临时设置环境变量的写法。
以下是几种可行的解决方式:
使用cross-env跨平台兼容
- 安装cross-env依赖:
npm install cross-env --save-dev - 修改
package.json里的build-esm脚本,把环境变量设置部分替换成cross-env:"build-esm": "cross-env BABEL_OUTPUT=esm babel src --extensions \".ts,.tsx,.js,.jsx\" --copy-files --out-dir esm" - 重新执行构建命令:
npm run build
- 安装cross-env依赖:
Windows环境下手动设置环境变量
- 如果用CMD:先执行
set BABEL_OUTPUT=esm,再单独执行babel构建命令:babel src --extensions ".ts,.tsx,.js,.jsx" --copy-files --out-dir esm - 如果用PowerShell:先执行
$env:BABEL_OUTPUT="esm",再执行上述babel命令
- 如果用CMD:先执行
切换到类Unix环境执行
使用WSL(Windows子系统)、Git Bash或者其他类Unix终端工具,直接运行原构建命令即可,这类环境支持Unix风格的环境变量语法。
内容的提问来源于stack exchange,提问作者user1716760
相关产品推荐
相关产品推荐

