سؤال

هل يمكن لأي شخص أن يساعدني في حل مشكلة 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 أن الجوهرة مثبتة فيه - تأكد من أنها ليست خاصة بالمستخدم المحلي .الأحجار الكريمة الدليل أو شيء من هذا.

إذا لم يتمكن أحد من حل اللغز، فألصق بعض تعليمات التصحيح البرمجية في البرنامج النصي العامل الخاص بك واطلب منه إخراج مسار التحميل الخاص به ($:) حتى تتمكن من رؤية المكان الذي تبحث فيه.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top