程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了zsh 中 npm postinstall 中的“sh: node: command not found error”大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决zsh 中 npm posTinstall 中的“sh: node: command not found Error”

开发过程中遇到zsh 中 npm posTinstall 中的“sh: node: command not found Error”的问题如何解决?下面主要结合日常开发的经验,给出你关于zsh 中 npm posTinstall 中的“sh: node: command not found Error”的解决方法建议,希望对你解决zsh 中 npm posTinstall 中的“sh: node: command not found Error”有所启发或帮助;

我使用 zsh 作为默认命令行 sHell。我已经使用 node 安装了 nvm

当我尝试安装 GatsbyJs 时出现错误

npm i -g gatsby-cli
....
npm ERR! code 127
npm ERR! path /Users/username/~/.nvm/versions/node/v16.0.0/lib/node_modules/gatsby-cli
npm ERR! command Failed
npm ERR! command sh -c node scripts/posTinstall.Js
npm ERR! sh: node: command not found

似乎 gatsby-cli 试图在 posTinstall.Js sHell 中使用 node 运行 sh 脚本,但它在那里不可用,因为我的 nvm/node 在 .zshrc 中声明.

通过创建一个 sh 文件,我能够在 .pro@R_419_6852@ 中运行 nvm 和 node,例如:

export NVM_DIR="~/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
source ~/.nvm/nvm.sh

export PATH=/usr/local/bin:$PATH

但我需要为每个 source ~/.pro@R_419_6852@ 会话运行 sh,否则,它不起作用。由于安装后会生成新的 sh 会话,因此我无法强制它使用 .pro@R_419_6852@

我不擅长所有这些 sHell 东西,所以感谢任何帮助。

(注意:我在安装其他 npm 包时没有这样的问题,例如 webpack-cli)

解决方法

问题出在 nvm 安装中。

修复步骤:

  1. 编辑此answer中提到的.zshrc
  2. 通过 nvm 重新安装节点

大佬总结

以上是大佬教程为你收集整理的zsh 中 npm postinstall 中的“sh: node: command not found error”全部内容,希望文章能够帮你解决zsh 中 npm postinstall 中的“sh: node: command not found error”所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。