【问题标题】:rubygem Twitter4R Issuesrubygem Twitter4R 问题
【发布时间】:2011-02-01 00:20:00
【问题描述】:

我正在尝试开始使用 twitter4r,但遇到了一些问题:

为什么我无法在 IRB 中加载 gem?

$ sudo gem 安装 twitter4r 成功安装twitter4r-0.3.2 已安装 1 个宝石 正在为 twitter4r-0.3.2 安装 ri 文档... 为 twitter4r-0.3.2 安装 RDoc 文档... $ irb >> 需要“红宝石” => 假的 >> 需要'twitter4r' LoadError:没有要加载的文件——twitter4r 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in ‘要求’ 来自 (irb):2

我已经下载了http://files.rubyforge.vm.bytemark.co.uk/twitter4r/twitter4rails.post-0_2_4.zip 应用程序,它仅适用于 twitter4r-0.2.4,不适用于最新版本 twitter4r-0.3.2:

$脚本/服务器 ./script/../config/boot.rb:26:Warning: Gem::SourceIndex#search 支持 对于不推荐使用字符串模式,请使用 #find_name => 引导 Mongrel(使用 'script/server webrick' 强制 WEBrick) => Rails 应用程序从 http://0.0.0.0:3000 开始 => 使用 -d 调用以分离 => Ctrl-C 关闭服务器 ** 在 0.0.0.0:3000 开始 Mongrel 监听 ** 使用开发环境启动 Rails... 退出 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require':没有要加载的文件——twitter/rails (缺少源文件) 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in ‘要求’ 来自 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/ dependencies.rb:495:in `require' 来自 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/ dependencies.rb:342:in `new_constants_in' 来自 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/ dependencies.rb:495:in `require' 来自 /Users/leonardodarioperna/Projects/Kaaaki/marrakaaaki/ twitter4rails.post-0_2_4/config/environment.rb:64 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in ‘要求’ 来自 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/ dependencies.rb:495:in `require' ... 23 级... 来自 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ ruby/gems/1.8/gems/rails-1.2.3/lib/commands/server.rb:39 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in ‘要求’ 从脚本/服务器:3

最后一件事,我需要在 /config/environment.rb 中指定:

 RAILS_GEM_VERSION = '1.2.3' 除非定义? RAILS_GEM_VERSION 

如果我使用我的最后一个 rails 版本:

 RAILS_GEM_VERSION = '2.3.4' 除非定义? RAILS_GEM_VERSION 

我收到此错误:

$脚本/服务器-p3002 => 引导 Mongrel => Rails 2.3.4 应用程序从 http://0.0.0.0:3000 开始 /Library/Ruby/Site/1.8/rubygems.rb:280:in `activate': 无法激活 [] 的 activerecord (= 1.15.6, runtime),已激活 activerecord-2.3.4 for ["rails-2.3.4"] (Gem::LoadError) 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:35:in ‘要求’ 来自 /Library/Ruby/Gems/1.8/gems/activesupport-2.3.4/lib/ active_support/dependencies.rb:156:in `require' 来自 /Library/Ruby/Gems/1.8/gems/activesupport-2.3.4/lib/ active_support/dependencies.rb:521:in `new_constants_in' 来自 /Library/Ruby/Gems/1.8/gems/activesupport-2.3.4/lib/ active_support/dependencies.rb:156:in `require' 来自/Library/Ruby/Gems/1.8/gems/twitter4r-0.2.4/lib/twitter/rails.rb: 6 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in ‘要求’ 来自 /Library/Ruby/Gems/1.8/gems/activesupport-2.3.4/lib/ active_support/dependencies.rb:156:in `require' ... 8 级... 来自/Library/Ruby/Gems/1.8/gems/rails-2.3.4/lib/commands/server.rb: 84 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 来自 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in ‘要求’ 从脚本/服务器:3

仅此而已:-)

谢谢!

【问题讨论】:

    标签: ruby-on-rails ruby rubygems twitter


    【解决方案1】:

    令人困惑的是,gem 名称和 require 名称是不同的。以下在 irb 中正常工作:

    require 'twitter'
    

    【讨论】:

    • +1 - 这真是太疯狂了……是时候进行一些额外的编码约定了。 :)
    • 天啊,这太疯狂了。最后一件事,我也安装了“twitter” gem (twitter.rubyforge.org) 如何在 IRB 中区分它们?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-20
    相关资源
    最近更新 更多