حدث خطأ أثناء الرجوع إلى 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)
أي أدلة؟
المحلول
عندما أرى هذا النوع من الأشياء، عادةً ما يرجع ذلك إلى وجود أكثر من نسخة روبي واحدة مثبتة على الجهاز (مما يعني أكثر من موقع جوهرة واحد، وما إلى ذلك)، والارتباك بين التطبيقات أو البيئات المختلفة بشأن التطبيق الذي سيتم تحميله.
تحقق من ذلك أولاً.إذا لم يكن هذا هو الجواب، قم ب gem which net/ssh
لمعرفة المكان الذي تعتقد RubyGems أن الجوهرة مثبتة فيه - تأكد من أنها ليست خاصة بالمستخدم المحلي .الأحجار الكريمة الدليل أو شيء من هذا.
إذا لم يتمكن أحد من حل اللغز، فألصق بعض تعليمات التصحيح البرمجية في البرنامج النصي العامل الخاص بك واطلب منه إخراج مسار التحميل الخاص به ($:) حتى تتمكن من رؤية المكان الذي تبحث فيه.