"Your Ruby version is 1.9.3, but your Gemfile specified 1.9.3-p194"



RVM不允许我运行bundle,因为它认为我的Ruby版本与Gemfile所说的不同,但事实并非如此:

$ rvm list
rvm rubies
=> ruby-1.9.3-p194 [ x86_64 ]
   ruby-1.9.3-p429 [ x86_64 ]
 * ruby-2.0.0-p195 [ x86_64 ]
# => - current
# =* - current && default
#  * - default
$ ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin13.0.0]

Gemfile:

ruby '1.9.3-p194'

但随后:

$ bundle install
Your Ruby version is 1.9.3, but your Gemfile specified 1.9.3-p194
$ 

这似乎是一件很奇怪的事情。有什么想法吗?有很多人有这个问题,但他们的Gemfiles显然与运行版本不同。我甚至做了rvm use 1.9.3-p194,然后在bundle install之后立即做,但我得到了相同的错误。bundle update产生相同的错误。

如果我从Gemfile中删除ruby版本,它将默认为2.0.0,但通过rvm use切换到正确的版本(以符合远程服务器ruby版本)实际上是可行的。运行bundle install,然后工作

这个错误可能是因为Rails项目中也有一个rvmrc文件(即使指定了相同的ruby版本)吗?

ruby指令明确排除了指定补丁级别。Ruby补丁通常包括重要的bug和安全性修复,并且非常兼容。http://bundler.io/v1.2/gemfile_ruby.html

Gemfile中的条目应该只是ruby '1.9.3'

删除该行并添加一个名为".ruby-version"的文件,其中包含"1.9.3-p194"。.ruby-version方法与rvm之外的几个ruby管理器兼容。

相关内容

  • 没有找到相关文章

最新更新