2

当我首先需要 'roo' 然后需要 'google-search' 时出现错误

TypeError: Google is not a module

同样,我首先需要 'google-search' 然后需要 'roo' 我收到此错误

TypeError: Google is not a class

请参阅下文了解 irb 上实际发生的情况

{12:30}[1.9.3]~ ➭ irb
1.9.3-p0 :001 > require 'roo'
 => true
1.9.3-p0 :002 > require 'google-search'
TypeError: Google is not a module
        from /home/sagar/.rvm/gems/ruby-1.9.3-p0/gems/google-search-1.0.3/lib/google-search/version.rb:2:in `<top (required)>'
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
        from /home/sagar/.rvm/gems/ruby-1.9.3-p0/gems/google-search-1.0.3/lib/google-search.rb:26:in `<top (required)>'
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:59:in `require'
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:59:in `rescue in require'
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in `require'
        from (irb):2
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/bin/irb:16:in `<main>'
1.9.3-p0 :003 > exit
{12:30}[1.9.3]~ ➭ irb
1.9.3-p0 :001 > require 'google-search'
 => true
1.9.3-p0 :002 > require 'roo'
TypeError: Google is not a class
        from /home/sagar/.rvm/gems/ruby-1.9.3-p0/gems/roo-1.10.1/lib/roo/google.rb:7:in `<top (required)>'
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
        from /home/sagar/.rvm/gems/ruby-1.9.3-p0/gems/roo-1.10.1/lib/roo.rb:74:in `<top (required)>'
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:59:in `require'
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:59:in `rescue in require'
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in `require'
        from (irb):2
        from /home/sagar/.rvm/rubies/ruby-1.9.3-p0/bin/irb:16:in `<main>'
4

1 回答 1

4

解决此问题的方法是使用 Roo 命名空间。我已经修改了 roo gem github。您可以从 github 存储库下载 roo-1.4.0.gem 并安装此版本的 roo

于 2013-01-17T07:21:31.953 回答