1

それで、私は過去に多くの Rails プログラミングを行ってきましたが、今では Ruby を RVM や Bundler、その他の gem と一緒に使いたいと思うようになりました。このプロジェクトで使用したかったのですが、次の LoadError が発生しました。

.rvm/../custom_require.rb:36:in `require': cannot load such file -- upnp/ssdp (LoadError)

Ruby 1.9.3を使用しています

次のファイルがあります。

upnp
- Gemfile
- upnp.rb

Gemfile よりも:

# Gemfile

source "http://rubygems.org"

gem "upnp", git: "https://github.com/turboladen/upnp.git"

そしてプロジェクトのメインファイル:

# upnp.rb
require 'rubygems'
require 'upnp/ssdp'

# Search for all devices (do an M-SEARCH with the ST header set to 'ssdp:all')
all_devices = UPnP::SSDP.search

puts all_devices

ここで、gemset を使用して RVM をセットアップし、すべてをバンドルした後、次のコマンドを実行します。

ruby upnp.rb

上記のエラーが表示されます..

このgemのGithubページをチェックアウトしたところ、次のlibフォルダーがありますupnp/ssdp.rb

それで良いはずですよね?

そんなものをデバッグする方法が本当にわかりません!

誰かがこの問題に光を当てることができますか?

ありがとう!

4

1 に答える 1

2

への呼び出しでラップしbundle execます。以下はRuby 1.93p194

$ bundle exec ruby upnp.rb 
D, [2012-11-06 11:05:06 #48555] DEBUG -- : Sent datagram search:
D, [2012-11-06 11:05:06 #48555] DEBUG -- : M-SEARCH * HTTP/1.1

リファレンスが見つかりませんが、rvm/ruby には「git installed」の ruby​​gems を見つけるのに問題があります。グーグルはおそらく公式の答えを見つけるでしょう。

于 2012-11-06T19:06:45.443 に答える