我正在运行Ruby v1.8.7和Rails v3.0.9。
我正在尝试使用这个Twitter gem:http://twitter.rubyforge.org/,v1.7.0
指示您需要:
require 'rubygems' require 'twitter'
但是,我收到了这个错误:
LoadError no such file to load -- twitter
我在SO上看到1.7.0 gem与Ruby 1.8.7不兼容,所以我降级到0.9(SO回答提到的版本与1.8.x兼容),但仍然没有用。
有一件事很奇怪,如果我启动irb,并首先包含rubygems,我可以包含twitter而没有任何问题。
我不得不使用sudo安装gem,但我不认为这应该是问题。
我有什么想法可以成功地将这个twitter宝石包含在我的应用程序中?一旦我能克服这个障碍,它看起来非常容易使用。
更新:我尝试添加
gem 'twitter'
到我的Gemfile并运行bundle install,现在我收到Phusion Passenger错误:
Ruby (Rack) application could not be started Could not find twitter-1.7.1 in any of the sources (Bundler::GemNotFound)
答案 0 :(得分:6)
你需要在你的Gemfile中要求twitter gem。运行bundle install,现在再次检查。
gem 'twitter'
答案 1 :(得分:1)
事实证明我实际上能够安装twitter v.1.7.1
我从网络上收到的其他信息,我需要降级到0.9.0,结果证明是错误的。
我跑了:
sudo gem list
将特定宝石的版本与我在此处找到的版本进行比较: https://github.com/jnunemaker/twitter/blob/master/HISTORY.md(我只是搜索“依赖”这个词,看看twitter关心哪个版本。
我也发现了这个差异: https://github.com/jnunemaker/twitter/commit/ac8114c1f6ba2da20c2267d3133252c2ffc6b6a3
我将那里列出的宝石与我安装的宝石进行了比较,我确保我的系统与我在版本说明中看到的一致。通常发生的事情是我有一个宝石的多个版本,并且由于某种原因,较低版本优先。
我不确定为什么还要添加
gem 'twitter', '1.7.1'
到我的Gemfile,但是唉,这是让这些东西运转所需的最后一步。
呼!