0

私はこのコードを試していました(ここのオンライン記事から得ました:http ://www.randomhacks.net/articles/2009/05/08/chat-c​​lient-ruby-amqp-eventmachine-shoes )

'rubygems'が必要
gem'amqp'
'mq'が必要

ARGV.length==2でない限り
  STDERR.puts "使用法:#{$ 0}"
  出口1
終わり
$ channel、$ nick = ARGV

AMQP.start(:host =>'localhost')do
  $ chat = MQ.topic('chat')

  #私たちのチャンネルにメッセージを印刷します。
  キュー=MQ.queue($ nick)
  queue.bind('chat'、:key => $ channel)
  queue.subscribe do | msg |
    if msg.index( "#{$ nick}:")!= 0
      msgを置きます
    終わり
  終わり

  #コンソール入力をチャネルに転送します。
  モジュールKeyboardInput
    EM :: Protocols::LineText2を含める
    def receive_line data
      $ chat.publish( "#{$ nick}:#{data}"、
                    :routing_key => $ channel)
    終わり
  終わり
  EM.open_keyboard(KeyboardInput)
終わり

しかし、次のエラーが発生しました。

chat.rb:11:in `':初期化されていない定数AMQP(NameError)

その後、開発環境でAMQPを使用して別のサンプルコードを試しましたが、すべてがそのエラーを示しています。したがって、問題はコードにはなく、私の開発環境の問題です。誰かが私の開発環境の問題を指摘できますか?前もって感謝します。

4

1 に答える 1

0

AMQP をインストールし、Ruby と統合しました (bunny gem 経由)。多分私は助けることができますか?

ほとんどの場合、gem のインストールで amqp ライブラリのコンパイルに失敗しました。gem をアンインストールして再インストールし、生成されたメッセージをよく見てください。おそらく、サードパーティのライブラリがいくつか欠けているだけです。

どのプラットフォームを使用していますか?

于 2010-05-28T09:44:10.717 に答える