ruby-on-rails - bundle install 认为它使用的是我没有的 ruby 版本
问题描述
尝试进行捆绑安装,但出现以下错误:
Your Ruby version is 2.6.3, but your Gemfile specified 2.2.7
问题是我没有安装 ruby 2.6.3 (OS Catalina)
使用 rvm list 我得到:
code
➜ cooper git:(id_43310_add_pr_comments_notification) ✗ rvm list
=> ruby-2.2.7 [ x86_64 ]
* ruby-2.3.8 [ x86_64 ]
ruby-2.6.5 [ x86_64 ]
# => - current
# =* - current && default
# * - default
➜ ✗ rvm uninstall 2.6.3
ruby-2.6.3 - #already gone
➜ ✗ rvm remove 2.6.3
ruby-2.6.3 - #already gone
Using /Users/noammansur/.rvm/gems/ruby-2.3.8
which ruby
/Users/noammansur/.rvm/rubies/ruby-2.2.7/bin/ruby
echo $path
/Users/noammansur/.rvm/gems/ruby-2.2.7/bin /Users/noammansur/.rvm/gems/ruby-2.2.7@global/bin /Users/noammansur/.rvm/rubies/ruby-2.2.7/bin /Users/noammansur/.rvm/bin /Users/noammansur/.nvm/versions/node/v8.11.4/bin /usr/local/bin /usr/bin /bin /usr/sbin /sbin /usr/local/opt/mysql@5.7/bin
ruby -v
ruby 2.2.7p470 (2017-03-28 revision 58194) [x86_64-darwin19]
但这无济于事。有什么建议么?
解决方案
Ruby 2.6.3 预装在 MacOS Catalina 中,因此您的问题应该来自损坏的 rvm 安装或 PATH。从检查ruby -v
和开始which ruby
。
当 rvm 工作时,你会得到类似的东西:
$ which ruby
/Users/<username>/.rvm/rubies/ruby-2.6.1/bin/ruby
$ echo $PATH
/Users/<username>/.rvm/gems/ruby-2.6.1/bin:
/Users/<username>/.rvm/gems/ruby-2.6.1@global/bin:
/Users/<username>/.rvm/rubies/ruby-2.6.1/bin:
/Users/<username>/.rvm/bin:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
在其他情况下:
$ rvm use system
Now using system ruby.
$ which ruby
/usr/bin/ruby
$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Users/<username>/.rvm/bin
检查您(或其他人)是否修改了您的配置文件脚本(.profile、.bashrc、zshrc 等,取决于您的 shell 和设置)并覆盖 PATH,还在那里寻找 rvm init 的存在:
export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
推荐阅读
- c# - BNO055 usb-stick 的 UserApplicationBoard.dll 中的不可调用成员
- wso2-am - WSO2 APIM 3.0.0:在 devportal 中更新 clientsecret 时出现问题
- ruby - Turbolinks.visit 不在同一页面上触发
- postgresql - 在数据/结构更改中为 Postgres DB 生成事件日志,以便稍后为较旧的 db 版本应用/回复
- netsuite - NetSuite 将自定义字段添加到价格级别
- go - 将 v4l2 像素格式代码映射到 ffmpeg 像素格式名称
- python - 在python的一系列输入中查找缺失的数字
- android - RecyclerView 适配器不使用数据绑定更新数据
- html - formControlName 导致单选按钮选择不起作用
- python - 在 pytorch 中使用 tensorboard,但得到空白页?