我根据github的说明安装了rbenv。我正在运行OSX,但我已经在Ubuntu 12.04虚拟机上尝试了这一点,并得到了相同的结果。下面是当我尝试更改ruby版本时,在我的终端中得到的结果:

rbenv versions
* 1.9.3-p0 (set by /Users/user/.rbenv/version)
1.9.3-p125

rbenv global
1.9.3-p0

rbenv rehash

ruby -v
ruby 1.8.7 (2011-12-28 patchlevel 357) [universal-darwin11.0]

which ruby
/usr/bin/ruby

有人知道为什么rbenv没有像它认为的那样切换ruby版本吗?此外,本地目录中没有.rbenv文件,这将导致ruby版本默认为1.8.7

rbenv local
rbenv: no local version configured for this directory

当前回答

将以下内容添加到.bashrc对我来说是有效的-

导出路径= " $ HOME / .rbenv /垫片:美元路径”

其他回答

我刚刚发现了同样的问题。我所做的就是卸载rbenv(通过homebrew)并重新安装它。我还补充了

if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi

到~ /。bash_profile当我重新安装rbenv。现在工作得很好。

鱼壳使用者

set --universal fish_user_paths $fish_user_paths ~/.rbenv/shims/

我尝试了所有的解决方案,但没有一个对我有效。甚至我也在.zshrc文件中包含了路径。

就我而言,我使用的是MacBook Pro M2和macOS Ventura 13.2。我使用的是React Native 0.71.2,需要Ruby 2.7.6版本。

我简单地把下面的代码放在。zprofile中,而不是。zshrc,它工作了:

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init - zsh)"

我建议不要使用rbenv,它有几个问题。

一旦你安装了ruby,它就不附带捆绑版本了 大多数情况下,在运行捆绑包安装时产生捆绑包版本拾取问题

为了减少这些工作,我建议使用rvm,使工作更简单。 按照这个链接安装RVM https://nrogap.medium.com/install-rvm-in-macos-step-by-step-d3b3c236953b

确保.bash_profile的最后一行是:

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"