ActiveRecord需要ruby版本> = 2.2.2

时间:2016-11-25 11:06:22

标签: ruby activerecord rake

我需要用于rake的activerecord,但是当我尝试安装它时,它说:

activesupport-5.0.0.1 requires ruby version >= 2.2.2,
which is incompatible with the current version, ruby 1.9.3p484

我尝试用rbenv将ruby更改为2.2.2

rbenv versions

输出

  

系统       * 2.2.2(由/home/user/.rbenv/version设置)         2.3.1

但是当我去ruby -v它说

  

ruby​​ 1.9.3p484(2013-11-22修订版43786)[x86_64-linux]

还尝试删除它,但是当我安装rake

sudo apt-get install rake

我得到了输出

  

将安装以下额外软件包:

     

libruby1.9.1 ruby​​ ruby​​1.9.1

但是,我需要ruby版本2.2.2或更高版本才能激活(ruby -v)来安装活动记录,这样我就可以执行rake命令了。

2 个答案:

答案 0 :(得分:1)

你搞砸了。

sudo apt-get install rake

是一个系统范围的 debian软件包,它对rbenv一无所知。删除它,以及删除系统红宝石。

之后,请执行:

rbenv global 2.2.2
gem install rake # ⇐ THIS

答案 1 :(得分:0)

我帮助了这个并解决了它。在我的情况下,我从

更改了gemfile.lock
    GEM
  remote: http://rubygems.org/
  specs:
    activemodel (5.0.0.1)
      activesupport (= 5.0.0.1)
    activerecord (5.0.0.1)
      activemodel (= 5.0.0.1)
      activesupport (= 5.0.0.1)
      arel (~> 7.0)
    activesupport (5.0.0.1)
      concurrent-ruby (~> 1.0, >= 1.0.2)
      i18n (~> 0.7)
      minitest (~> 5.1)
      tzinfo (~> 1.1)
    arel (7.1.4)
    concurrent-ruby (1.0.2)
    i18n (0.7.0)
    minitest (5.9.1)
    mysql2 (0.4.5)
    rake (11.3.0)
    thread_safe (0.3.5)
    tzinfo (1.2.2)
      thread_safe (~> 0.1)

PLATFORMS
  ruby

DEPENDENCIES
  activerecord
  mysql2
  rake

BUNDLED WITH
   1.13.6

到这一个(最重要的是activerecord版本):

GEM
  remote: http://rubygems.org/
  specs:
    activemodel (3.1.3)
      activesupport (= 3.1.3)
      builder (~> 3.0.0)
      i18n (~> 0.6)
    activerecord (3.1.3)
      activemodel (= 3.1.3)
      activesupport (= 3.1.3)
      arel (~> 2.2.1)
      tzinfo (~> 0.3.29)
    activesupport (3.1.3)
      multi_json (~> 1.0)
    arel (2.2.1)
    builder (3.0.0)
    i18n (0.6.0)
    multi_json (1.0.4)
    mysql2 (0.3.11)
    rake (0.9.2.2)
    tzinfo (0.3.31)

PLATFORMS
  ruby

DEPENDENCIES
  activerecord
  mysql2
  rake

BUNDLED WITH
   1.13.6

然后安装了activerecord和我需要的所有其他

gem install activerecord -v 3.1.3
sudo apt-get install libmysqlclient-dev
sudo apt-get install ruby1.9.1-dev
gem install activerecord-mysql2-adapter
gem uninstall mysql2
gem install mysql -v 0.3.11

耙子工作了。

 rake db:migrate[]

希望这会对某人有所帮助! :)