如何仅为单个项目切换我的 Ruby 版本?
Posted
技术标签:
【中文标题】如何仅为单个项目切换我的 Ruby 版本?【英文标题】:How do I switch my Ruby version for a single project only? 【发布时间】:2018-06-02 08:35:51 【问题描述】:我读到 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 2.3.0 && cd ~ && cd - && bundle install
。我以为rbenv local
只是相应地设置了你的 .ruby-version 文件
@Anthony,当我运行该命令时,它显示我的系统上什至没有安装 ruby 2.3。解决这个问题确实解决了我在问题中描述的问题。
酷 - 如果这对你有用,我会写一个快速的答案?
@Anthony,加油!
【参考方案1】:
这是 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
的文件夹中运行
【讨论】:
【参考方案2】:如果你有 gemfile,你也可以添加 红宝石'2.3.1' 在里面告诉你的系统使用那个 ruby 版本。
【讨论】:
【参考方案3】:rbenv local 仅在您的当前目录中设置一个.ruby-version
文件,它也不会为您加载该版本。您需要设置它,然后 cd .. && cd -
让 rbenv shim 获取该版本。
【讨论】:
rbenv local VERSION
通常会立即拿起它。以上是关于如何仅为单个项目切换我的 Ruby 版本?的主要内容,如果未能解决你的问题,请参考以下文章
Azure DevOps Build Pipeline:如何仅为更改的程序集增加程序集版本?
如何在一个简单的非 Rails 项目中使用特定的 Ruby 版本