【问题标题】:Can't install because I don't have high enough Ruby version, but I do无法安装,因为我没有足够高的 Ruby 版本,但我有
【发布时间】:2016-08-15 14:41:31
【问题描述】:

我正在尝试将小部件添加到仪表板。我已将小部件克隆到正确的目录并将文件复制到相关位置。最后要做的是运行这一行:

bundle install 

一切顺利,直到我得到线路:

Gem::InstallError: activesupport requires Ruby version >= 2.2.2.

Make sure that `gem install activesupport -v '5.0.0.1'` succeeds before
bundling.

所以我已经单独安装了:

sudo gem install activesupport -v 5.0.0.1
Successfully installed activesupport-5.0.0.1

但是当我尝试运行“捆绑安装”时,我得到了同样的错误。

我什至检查了 ruby​​ 版本,它足够高:

ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]

我做错了什么?是否选择使用较低版本的 ruby​​?

【问题讨论】:

  • iruby 到底是什么?
  • 对不起,只是一个错字。现已修复。
  • 尝试使用bundle list 来验证捆绑程序是否找到了正确的版本。你也可以试试gem list | grep activesupport。有时我会发现我安装了多个版本,并且首先命名了错误的版本,这表明正在使用的版本。
  • 请将gem env 的输出添加到您的问题中,格式正确,便于阅读。总的来说,sudo 向我们挥舞着一面旗帜,表明你正在做一些你应该警惕的事情。我们建议使用 RVM 或 rbenv 来管理您的 Ruby/Rubies,无论您使用的是 RVM 还是 rbenv,都可以让您不必担心拥有超级用户权限以及可能会意外覆盖系统所需代码的担忧.您使用的是 Mac OS,因此sudo 将更改供应商提供的 Ruby,这不是一个好主意。这在 SO 上被多次介绍。

标签: ruby-on-rails ruby installation activesupport


【解决方案1】:

您是使用 RVM 还是 Rbenv 来管理 Ruby?如果是这样,您不应该使用sudo 来安装该gem,因为它将被放置在您的系统Ruby 中,这通常是较低的版本。

【讨论】:

  • 我也没有使用,我不使用 sudo 时只会获得权限被拒绝。
  • 您绝对应该使用其中之一。我个人推荐使用 RVM。它更容易管理。尝试安装它,然后使用您的捆绑包。让我知道它是如何从那里开始的(它应该可以解决你的问题)
【解决方案2】:

我遇到了同样的问题,我终于解决了以 sudo 运行它:

sudo bundle install 

确保您的 Gemfile 位于运行命令的同一目录中,以防 Gemfile 如下所示:

source 'https://rubygems.org'
gem 'github-pages', group: :jekyll_plugins

最后你会得到这样的结果: ...

-------------------------------------------------
Thank you for installing html-pipeline!
You must bundle Filter gem dependencies.
See html-pipeline README.md for more details.
https://github.com/jch/html-pipeline#dependencies
-------------------------------------------------

【讨论】:

    猜你喜欢
    • 2019-02-18
    • 2013-08-11
    • 1970-01-01
    • 1970-01-01
    • 2021-09-14
    • 2012-01-12
    • 2022-09-28
    • 2013-04-06
    • 1970-01-01
    相关资源
    最近更新 更多