Ruby 无法识别 Grackle 对象/插件(Twitter API 包装器)——"NameError: uninitialized constant Grackle"



该程序的第一行是发生错误的地方,

require 'grackle'

这是我今天早上在课堂上写的代码,整个程序(以"require grackle"开头)我能够阅读推文并直接从命令行编写它们。现在我回到家并尝试在我的Mac上运行完全相同的程序(从irb)并得到这个:

source "grackle.rb"
>> require 'grackle'
NameError: uninitialized constant Grackle
 from ./grackle.rb:5
 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `require'
 from grackle.rb:2
>> require 'json'
=> false
>> require 'highline/import'
=> false
>> 
?>  $client = Grackle::Client.new( :auth => {
...(Oauth keys)...
NameError: uninitialized constant Grackle
from grackle.rb:6
etc etc, every time Grackle gets called a similar error occurs

在它尝试运行第一行之后。然后,此初始错误会触发一连串错误。

我已经安装了格拉克尔宝石。这是怎么回事?

您运行的是 ruby 1.8。您需要先require 'rubygems'才能require 'grackle'(宝石)。

您自己很困惑,因为当前目录中有一个名为 grackle.rb 的文件,但您没有先在irb中初始化rubygems,因此require 'grackle'将加载本地grackle.rb而不是 gem。

相关内容

最新更新