繁体   English   中英

NVM 管理 npm 全局安装包返回命令未找到

[英]NVM managed npm globally installed packages return command not found

我安装了 nvm 来管理我的节点版本。 如果我全局安装一个包, npm install -g fkill ,然后运行fkill ,我会收到错误zsh: command not found: fkill

这里有一些命令可以帮助调试这个

$ npm root -g
/home/jchi/.nvm/versions/node/v10.15.3/lib/node_modules

看着我的路径...

$ echo $PATH
/home/jchi/.pyenv/shims:/home/jchi/.pyenv/bin:/home/jchi/.nix-profile/bin:/home/jchi/.autojump/bin:/home/jchi/.nvm/versions/node/v10.15.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/games

我在 PATH 中没有看到npm root -g的输出。

我认为 nvm 有责任将其添加到我的路径中,以便可以运行全局安装的软件包。 所以,我看什么,我有我的.zshrc那的kickstart NVM。

export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
  105 [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

建议赞赏

查看您的 PATH,您的 PATH 下确实有 nvm bin 文件夹。 /home/jchi/.nvm/versions/node/v10.15.3/bin

我建议检查你是否在~/.npmrc前缀相关的设置。

如果您有任何前缀设置,请将其删除。

然后再次尝试运行npm install -g fkill

解决此问题的一种方法是将您的 NVM 节点 bin 添加到您的路径中。

  1. 您使用的是哪个节点版本? node --version
  2. 将下面的行添加到您的.bashrc (用您在步骤 1 中获得的内容替换 VERSION)
export PATH="$HOME/.nvm/versions/node/VERSION/bin:$PATH"

例子:

export PATH="$HOME/.nvm/versions/node/v16.1.0/bin:$PATH"
  1. 当您刷新终端( . ~/.bashrc或重新打开终端)时,您的全局节点命令现在应该可以工作了。

不幸的是,您使用的每个版本的 Node 似乎都需要这样做。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM