【问题标题】:Ruby Twitter gem红宝石推特宝石
【发布时间】:2011-01-11 17:22:45
【问题描述】:

-- 更新--

好的,它已修复。这就是我所做的。完全删除所有红宝石和红宝石。然后安装 ruby​​1.9.1-full 和 ruby​​gems1.9.1 然后安装 twitter gem。

大家好,

我在使用 Twitter gem 时遇到问题。我正在使用 ruby​​ 1.8.7

安装后,当我尝试运行一个简单的脚本时,我得到了这个错误

ruby twitter.rb ./twitter.rb:5: 未初始化的常量 Twitter (NameError) 来自 /usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require' from /usr/lib/ruby/1.8/rubygems/custom_require.rb:31:inrequire' 来自 twitter.rb:2

我在 Ubuntu 机器上运行它。我检查了 gem -list ,我看到 Twitter (1.1.0) 列在那里。

这是我要运行的代码

require "rubygems"
require 'twitter'


puts Twitter.user_timeline("test").first.text 

有什么想法吗?

【问题讨论】:

  • 我刚遇到这个问题,结果发现 ruby​​gems 告诉 bundler 安装错误版本的 gem。我在 bundler 中明确设置了版本并运行了 bundle update 并让它再次工作。

标签: ruby twitter gem


【解决方案1】:

我相信它只适用于 Ruby 1.9 如果您想使用 twitter gem,请尝试使用 Ruby 1.8.x 的 0.9 版

【讨论】:

  • 好的我卸载了 ruby​​ 1.8.7 install 1.9.2 也安装了 ruby​​gems 1.9.2 现在我得到这个错误 twitter.rb:2:in require': no such file to load -- twitter (LoadError) from twitter.rb:2:in
    '
  • 我使用 pik 在我早期的 ruby​​ 1.8.7 上安装了 ruby​​1.9.2。我不需要更新系统 gem。我现在能想到的是,既然你已经升级到 ruby​​ 1.9.2,你必须重新发出命令“gem install twitter”,因为之前在 ruby​​-1.8.7 下安装了 gem,现在你已经安装了 ruby​​ 1.9 .2
【解决方案2】:

这对我有用:

ruby-1.9.2-p0 > require 'twitter'
 => true 
ruby-1.9.2-p0 > puts Twitter.user_timeline("test").first.text 
TExES Pedagogy and Professional Responsibilities EC-12 Teacher Certification Test Prep Study Guid… - by Sharon A Wynne http://amzn.to/f3kF74
 => nil 

您使用的是哪个版本的 ruby​​?

【讨论】:

  • 对,对不起,我忘了把那个 ruby​​ -v ruby​​ 1.8.7 (2010-01-10 patchlevel 249) [i486-linux]
【解决方案3】:

gouravtiwari21 的评论似乎解决了这个问题,但如果你想使用 Ruby 1.8.x 运行 twitter gem,建议它需要 0.9.0 是错误的。

您可以在此处查看版本兼容性: http://travis-ci.org/#!/jnunemaker/twitter

它显示了使用 Ruby 的 twitter gem 安装低至 1.8.7。

对我来说,拥有正确的依赖 gem 以及正确的版本是个问题。

这是我的工作原理:

我跑了:

须藤宝石清单

并将特定 gem 的版本与我在此处找到的版本进行了比较: https://github.com/jnunemaker/twitter/blob/master/HISTORY.md(我只是搜索了“依赖”这个词,以查看 twitter 关心的版本。

我还发现了这个差异: https://github.com/jnunemaker/twitter/commit/ac8114c1f6ba2da20c2267d3133252c2ffc6b6a3

我将那里列出的 gem 与我安装的进行了比较,我只是确保我的系统与我在版本说明中看到的一致。通常发生的情况是我有多个版本的 gem,并且由于某种原因,较低的版本优先。

我不知道为什么还要添加

宝石'推特','1.7.1'

到我的 Gemfile,可惜,这是让这些东西正常工作所需的最后一步。

别忘了重启你的服务器,你应该就好了!

【讨论】:

  • 谢谢,如果我再次遇到同样的问题,我会试试这个。
猜你喜欢
  • 1970-01-01
  • 2012-12-10
  • 2019-08-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多