Ошибка ссылки на установленный Ruby Gem
Вопрос
Может ли кто-нибудь помочь с странной проблемой с Ruby Gem, которая у меня возникла - обратите внимание, что в прошлом я установил много драгоценных камней и никогда не видел этого.
Я загрузил гемы net-ssh и net-sftp, используя следующие команды:
sudo gem install net-ssh
sudo gem install net-sftp
оба успешно установлены. Однако, когда я ссылаюсь на файлы в моем коде, я получаю следующую ошибку:
./workers/ffmpeg_worker.rb:6:in `require': no such file to load -- net/ssh (LoadError)
from ./workers/ffmpeg_worker.rb:6
from ./workers/tests/test_ffmpeg_worker.rb:3:in `require'
from ./workers/tests/test_ffmpeg_worker.rb:3
from /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader.rb:5:in `load'
from /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader.rb:5
from /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader.rb:5:in `each'
from /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader.rb:5
rake aborted!
Command failed with status (1): [/System/Library/Frameworks/Ruby.framework/...]
Обратите внимание, когда я это сделаю:
gem list --local
Драгоценные камни перечислены как таковые:
net-scp (1.0.2)
net-sftp (2.0.2, 1.1.0)
net-ssh (2.0.15, 1.1.2)
net-ssh-gateway (1.0.1)
Есть какие-нибудь подсказки?
Решение
Когда я вижу подобные вещи, это обычно сводится к тому, что на машине установлено более одного Ruby (что означает более одного местоположения драгоценного камня и т. д.), и разные приложения или среды запутываются в том, какой из них загружать. , Р>
Сначала проверьте это. Если это не ответ, сделайте gem net / ssh
, чтобы увидеть, где RubyGems считает, что gem установлен - убедитесь, что это не .gems каталог или что-то. Р>
Если ни один из них не решает загадку, вставьте некоторый отладочный код в рабочий скрипт и выведите его путь загрузки ( $: ), чтобы вы могли видеть, где он выглядит.