无法通过Shell命令运行babel-node的问题求助
解决babel-node在CLI中找不到的问题
问题原因
npm script运行时会自动将项目node_modules/.bin目录临时加入系统PATH,所以即使只本地安装了@babel/node,script里也能找到babel-node命令。但直接在zsh CLI执行时,PATH里没有包含全局npm包的bin目录,或者本地包的bin目录,导致找不到命令。
解决方案
用npx直接调用:npx会自动查找本地
node_modules/.bin或全局安装的包,直接运行:npx babel-node src/index.js检查并配置全局npm包的PATH:
- 先获取全局npm包的bin目录路径,执行:
npm bin -g - 打开zsh的配置文件
~/.zshrc,确认里面是否包含这个路径,比如如果输出是/usr/local/bin,就需要有一行:export PATH="$PATH:/usr/local/bin" - 保存配置后,执行
source ~/.zshrc让配置生效,再尝试运行babel-node。
- 先获取全局npm包的bin目录路径,执行:
直接调用本地包的命令:如果不想折腾PATH,直接用本地node_modules里的命令:
./node_modules/.bin/babel-node src/index.js重新安装全局包(处理权限问题):如果之前全局安装失败,可能是权限问题,用sudo重新安装:
sudo npm i -g @babel/node @babel/cli安装完成后运行
which babel-node,如果有输出说明安装成功。
内容的提问来源于stack exchange,提问作者713sean
相关产品推荐
相关产品推荐

