如何仅为单个项目切换我的 Ruby 版本?
How do I switch my Ruby version for a single project only?
我读到 rbenv 只能用于为单个项目切换 Ruby 环境。我的系统上安装了 Ruby 2.4,但我只想将 2.3 版用于特定项目。我认为使用 "rbenv local" 可以治愈疼痛,但事实并非如此......
localhost:myproject davea$ rbenv local 2.3.0
localhost:myproject davea$ bundle install
Your Ruby version is 2.4.0, but your Gemfile specified 2.3.0
localhost:myproject davea$ ruby -v
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin16]
如何仅将 Ruby 2.3 用于此项目?
rbenv local 只会在您的当前目录中设置一个 .ruby-version
文件,它不会为您加载该版本。您需要对其进行设置,然后 cd .. && cd -
让 rbenv shim 选择该版本。
如果你有一个 gemfile 你也可以添加
ruby '2.3.1'
在里面告诉你的系统使用那个 ruby 版本。
这是 linux 或 WSL 发行版的最佳解决方案
先看看你可以下载哪些版本
rbenv install -l
然后用
安装
rbenv install 2.6.6
现在您已经安装了一个版本来检查您拥有的所有版本:
rbenv versions
然后要使用它,您可以在特定项目中本地设置它:
rbenv local 2.6.6
或全球
rbenv global 2.6.6
安装后,您可以使用 rails new
创建一个项目 ==> 自动设置为 ruby global
如果项目已经创建,有两种方法
- 手动修改:
.ruby-version
到您的全球版本
- 或 运行 在项目的文件夹中
rbenv local 2.6.6
对我有用的是的解决方案:
rbenv local 2.7.1 # switches to ruby 2.7.1
我读到 rbenv 只能用于为单个项目切换 Ruby 环境。我的系统上安装了 Ruby 2.4,但我只想将 2.3 版用于特定项目。我认为使用 "rbenv local" 可以治愈疼痛,但事实并非如此......
localhost:myproject davea$ rbenv local 2.3.0
localhost:myproject davea$ bundle install
Your Ruby version is 2.4.0, but your Gemfile specified 2.3.0
localhost:myproject davea$ ruby -v
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin16]
如何仅将 Ruby 2.3 用于此项目?
rbenv local 只会在您的当前目录中设置一个 .ruby-version
文件,它不会为您加载该版本。您需要对其进行设置,然后 cd .. && cd -
让 rbenv shim 选择该版本。
如果你有一个 gemfile 你也可以添加 ruby '2.3.1' 在里面告诉你的系统使用那个 ruby 版本。
这是 linux 或 WSL 发行版的最佳解决方案
先看看你可以下载哪些版本
rbenv install -l
然后用
安装rbenv install 2.6.6
现在您已经安装了一个版本来检查您拥有的所有版本:
rbenv versions
然后要使用它,您可以在特定项目中本地设置它:
rbenv local 2.6.6
或全球
rbenv global 2.6.6
安装后,您可以使用 rails new
创建一个项目 ==> 自动设置为 ruby global
如果项目已经创建,有两种方法
- 手动修改:
.ruby-version
到您的全球版本 - 或 运行 在项目的文件夹中
rbenv local 2.6.6
对我有用的是
rbenv local 2.7.1 # switches to ruby 2.7.1