Ruby'需要兔子'触发看起来像循环要求的东西

时间:2016-12-03 19:20:22

标签: ruby rubygems sinatra

这个案子让我难过。我正在编写一个非常简单的Sinatra应用程序,它导致看起来像循环需要问题的require "bunny"。这里有一些证据,顺便提一下,经过大量试验,移动代码,评论等等:

正如你所看到的,我在require语句之前设置了一个断点:

rake test
[MAINAPP Starting! Rack: test]
/Users/pitosalas/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/sqlite3-1.3.12/lib/sqlite3/pragmas.rb:301: warning: method redefined; discarding old integrity_check
/Users/pitosalas/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/sqlite3-1.3.12/lib/sqlite3/pragmas.rb:107: warning: previous definition of integrity_check was here

[1, 10] in /Volumes/MonsterHD/mydev/nanotwitter/services/nt_service.rb
    1: require 'byebug'
    2: require_relative "../services/service_dispatch"
    3:
    4: byebug
=>  5: require 'bunny'
    6:
    7: class NtService
    8:   def initialize
    9:     @requests = 0
   10:     @running = false

现在我验证Bunny类尚未定义:

(byebug) Bunny
*** NameError Exception: uninitialized constant Bunny

nil
(byebug) next

现在我跨过了“要求”#39;所有的地狱都松了一口气。一个非常长且明显重复的堆栈跟踪,包含涉及循环的错误。以下是所有细节:https://gist.github.com/pitosalas/de54212ddeac66328c02d64156845c8c

这里有任何线索吗?我应该告诉你的任何其他代码?谢谢!!

1 个答案:

答案 0 :(得分:0)

试试这个

gem install bunny

我认为这可以解决您的问题。

或升级您的ruby版本

require "bunny"