使用 homebrew 切换到不同版本的 ruby

问题描述 投票:0回答:2

我使用迁移助手迁移了我的 MacBook。我有两个 Rails 应用程序,我在以前的笔记本电脑上使用,现在当我尝试在新笔记本电脑上使用这些应用程序时,其中一个可以正常工作(餐厅应用程序),而当我尝试打开服务器时,另一个(测验应用程序)可以正常工作得到这个

Your Ruby version is 2.2.3, but your Gemfile specified 2.5.1

这两个应用程序的 ruby 版本都是 2.5.1。我能够在一个应用程序(餐厅应用程序)上运行服务器,而不能在另一个应用程序(测验应用程序)上运行服务器,这可能是什么原因。

我尝试运行下面的命令将 ruby 版本切换到 2.5.1

brew unlink [email protected] && brew link --force --overwrite [email protected]

但我收到错误

No such keg: /usr/local/Cellar/[email protected]

请帮我解决这个问题。

ruby-on-rails ruby ruby-on-rails-5 homebrew
2个回答
8
投票

通常您最好使用 ruby 版本管理器。两个主要的是 RVM (https://rvm.io/) 和 rbenv

我个人是 rbenv 及其垫片使用的忠实粉丝(我个人使用捆绑器并通过 xcversion 切换 xcode 版本时遇到的麻烦较少)https://github.com/rbenv/rbenv

brew install rbenv 
rbenv install 2.5.1
rbenv use 2.5.1

您可以选择在项目根目录中使用 .ruby-version 文件,以确保不会再次出现问题。 https://github.com/rbenv/rbenv#choosing-the-ruby-version

# in your project root
echo '2.5.1' > .ruby-version

通过这种方式,您只需在项目根目录中启动它即可轻松选择您想要用于应用程序的版本。


0
投票

我尝试按照 MacOS 14.0 上的说明进行操作。 2.5.1 已不存在。 2.7.0 无法构建。我安装了 2.7.8,使用命令

brew 安装 rbenv rbenv 安装 2.7.8 rbenv 全球 2.7.8

这会显示警告

警告:ruby-2.7.8 已过生命周期,现在不受支持。 它不再接收错误修复或关键安全更新。

所以您可能想尝试更高的版本。 (目前我只是按照 https://reactnative.dev/docs/environment-setup?guide=native 的说明安装react-native 并修复出现的所有问题)。

© www.soinside.com 2019 - 2024. All rights reserved.