捆绑使用错误的红宝石版本

捆绑使用错误的红宝石版本

本文介绍了捆绑使用错误的红宝石版本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试



env RAILS_ENV =测试包执行rake db:migrate



并出现以下错误



您的Ruby版本是2.1.7,但是您指定了Gemfile 2.2.3



ruby​​ -v



给我



红宝石2.2.3p173(2015-08-18修订版51636)[x86_64-darwin15]



我正在使用rbenv,如果那很重要的话。 rbenv版本给出以下内容:

系统
* 2.2.3(由/ Users / thatsme /项目/demoproject/.ruby版本)

所以我没有安装 ruby​​ 2.1.7 。 Spring没有运行,我已经运行 rbenv rehash 。然后安装 bundler gem
我对此很发疯。有人可以告诉我为什么使用了错误的红宝石版本吗?谢谢!

解决方案

假设:您正在使用RVM。
这意味着在RVM外部安装了一个红宝石版本。
通过运行

  rvm卸载<红宝石版>清除rvm红宝石。 

一旦您卸载了所有rvm红宝石,就会执行 ruby​​ -v ,如果返回指定红宝石版本的输出,那就是问题的根源。

  sudo apt-get删除ruby 


现在使用 rvm install< ruby​​ version> 安装rvm红宝石并将其设置为默认 rvm使用< ruby​​版本>



现在安装捆绑程序

  gem安装捆绑软件

然后进行捆绑安装


I'm trying to run

env RAILS_ENV=test bundle exec rake db:migrate

and get the following error

Your Ruby version is 2.1.7, but your Gemfile specified 2.2.3

ruby -v

gives me

ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin15]

I'm using rbenv, if that matters. rbenv versions gives the following: system* 2.2.3 (set by /Users/thatsme/Projects/demoproject/.ruby-version)So I have no ruby 2.1.7 installed. Spring is not running and I've run rbenv rehash. Then bundler gem is installed.I'm going nuts on this. Can somebody please tell me why the wrong ruby version is being used? Thanks!

解决方案

Assumption: You are using RVM.This means there's a ruby version installed outside of RVM.Clear your rvm rubies by running

rvm uninstall <ruby version>

once you have uninstalled all rvm rubies do ruby -v, if this returns an output specifying a ruby version then thats the root of the problem. Uninstall it with

sudo apt-get remove ruby

Now install your rvm rubies with rvm install <ruby version> and set it as default rvm use <ruby version>

Now install bundler

gem install bundler

And do bundle install

这篇关于捆绑使用错误的红宝石版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-04 07:11