1

我很高兴为运行 Ruby 1.8.7 的应用程序设置开发环境。不幸bundler的是没有使用 Ruby 中设置的.ruby-version版本chruby

另外,我已经ruby "1.8.7"包含在Gemfile

而本地版本是ruby-1.8.7-p374bundler环境是使用ruby-2.5.0p0

$ ruby -v
ruby 1.8.7 (2013-06-27 patchlevel 374) [i686-darwin17.3.0]

$ bundle env | grep Ruby
Ruby          2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin17]

这将导致以下消息:

$ bundler
Your Ruby version is 2.5.0, but your Gemfile specified 1.8.7

这个问题包含一些有用的评论,但到目前为止我还没有解决这个问题。/usr/local/opt由于vim通过安装,我确实安装了 Ruby 2.5.0 brew install vim。这似乎是 Ruby 1.8.7 捆绑脚本正在使用的版本,如下所示:

$ which bundle
/Users/keithpitty/.gem/ruby/1.8.7/bin/bundle

$ head -n1 $(which bundle)
#!/usr/local/opt/ruby/bin/ruby

这个问题被证明是相当令人沮丧的。我将非常感谢任何建议。

4

3 回答 3

0

您是否提到过您计划使用的 Gemfile 中的 ruby​​ 版本,如果不尝试在 Gemfile 中添加 ruby​​ 版本,请在此处了解更多信息。

ruby '~> 2.3.0'

另外,如果您的机器中有多个 ruby​​ 版本,理想情况下,您可以使用RVMrbenv来管理多个 Ruby 版本。(让你的生活轻松:))

于 2018-01-25T04:56:33.893 回答
0

我通过安装 RubyGems 1.6.2 解决了这个问题。有关更多信息,请参阅如何在 gem 环境中设置正确的 Ruby 版本

于 2018-07-04T13:45:34.687 回答
0

我按照这些说明 https://gist.github.com/andrewroycarter/6815905

简而言之,我有一个使用 2.5.8 的项目,而我的本地版本是 2.7.2,所以 bundle install 说

您的 Ruby 版本是 2.7.2,但您的 Gemfile 指定了 2.5.8

我所做的是转到我的主目录(或至少离开项目目录),激活 chruby 2.5.8 并安装 bundle gem

cd
chruby 2.5.8
gem install bundler

现在,当我回到项目目录时,我可以进行捆绑安装。

于 2021-05-31T21:14:03.137 回答