【问题标题】:Gem error. can't activate faraday (>= 0.7.3, runtime) for ["youtube_it-2.1.1"], already activated faraday-0.5.7 for ["instagram-0.8"]"宝石错误。无法为 ["youtube_it-2.1.1"] 激活 faraday (>= 0.7.3, runtime),已经为 ["instagram-0.8"] 激活了 faraday-0.5.7"
【发布时间】:2012-01-21 10:26:37
【问题描述】:

我正在使用 youtube_it API 制作 Rails(3.0.4) 应用程序。

我使用 gem install youtube_it 安装了 gem,但是当我运行脚本时出现此错误:

can't activate faraday (>= 0.7.3, runtime) for ["youtube_it-2.1.1"], already activated faraday-0.5.7 for ["instagram-0.8"]

我应该如何在不删除现有版本的法拉第的情况下解决此问题?

【问题讨论】:

  • Bundle exec 无法在我的应用程序中完成,所以我正在尝试另一种方法来做到这一点,我已将 youtube_it 文件夹放在我的应用程序的 /vendor/plugins/ 目录中。但是当我确实需要'youtube_it'时,我收到一个错误“NoMethodError:Faraday::Request::OAuth:Class 的未定义方法'依赖'”。怎么了?

标签: ruby-on-rails ruby youtube-api faraday-oauth


【解决方案1】:

首先,您应该将 youtube_it 添加到您的 Gemfile,然后运行 ​​bundle install

这为捆绑器提供了足够的信息来确定应用程序所需的所有 gem 的依赖关系图。 Bundler 将所需的 gem、它们的依赖项和版本写入 Gemfile.lock 文件。

其次,运行 rails 命令时,根据 Yehuda Katz (http://yehudakatz.com/2011/05/30/gem-versioning-和-bundler-doing-it-right/)。但是,根据我的经验,有时即使是 rails 命令也需要 bundle exec。

在任何情况下,运行“bundle exec executable”将运行您的 executable(rails、rake 等),其中列出了 gem Gemfile.lock,避免可怕的“无法激活 -- 已激活”错误。

【讨论】:

    【解决方案2】:

    我不认为你可以。您应该将法拉第更新到其最新版本。有正当理由不这样做吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-07
      • 1970-01-01
      • 1970-01-01
      • 2023-03-07
      • 1970-01-01
      • 2019-06-28
      • 2014-08-30
      • 1970-01-01
      相关资源
      最近更新 更多