[英]Globally installed npm package not found when installed with NVM using oh-my-zsh
[英]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 添加到您的路径中。
node --version
.bashrc
(用您在步骤 1 中获得的内容替换 VERSION)export PATH="$HOME/.nvm/versions/node/VERSION/bin:$PATH"
例子:
export PATH="$HOME/.nvm/versions/node/v16.1.0/bin:$PATH"
. ~/.bashrc
或重新打开终端)时,您的全局节点命令现在应该可以工作了。不幸的是,您使用的每个版本的 Node 似乎都需要这样做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.