Ruby script ne peut pas localiser nécessaire gem
Je suis en train de lancer un script Ruby qui a bien fonctionné dans le passé. J'ai besoin d'utiliser le Mécaniser gem, donc au début du script, il est dit require 'mechanize'
. Cependant, lorsque j'essaie d'exécuter le script, maintenant, la Borne de sortie de lit:
/Users/codebiker/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- mechanize (LoadError)
from /Users/codebiker/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from myscript.rb:2:in `<main>'
Quand je lance gem env
, comme suggéré ici, j'obtiens:
RubyGems Environment:
- RUBYGEMS VERSION: 2.2.1
- RUBY VERSION: 2.1.0 (2013-12-25 patchlevel 0) [x86_64-darwin13.0]
- INSTALLATION DIRECTORY: /Users/codebiker/.rvm/gems/ruby-2.1.0
- RUBY EXECUTABLE: /Users/codebiker/.rvm/rubies/ruby-2.1.0/bin/ruby
- EXECUTABLE DIRECTORY: /Users/codebiker/.rvm/gems/ruby-2.1.0/bin
- SPEC CACHE DIRECTORY: /Users/codebiker/.gem/specs
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-13
- GEM PATHS:
- /Users/codebiker/.rvm/gems/ruby-2.1.0
- /Users/codebiker/.rvm/gems/ruby-2.1.0@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- :benchmark => false
- :sources => ["http://rubygems.org/", "http://gemcutter.org"]
- "install" => "--no-rdoc --no-ri"
- "update" => "--no-rdoc --no-ri"
- REMOTE SOURCES:
- http://rubygems.org/
- http://gemcutter.org
- SHELL PATH:
- /Users/codebiker/.rvm/gems/ruby-2.1.0/bin
- /Users/codebiker/.rvm/gems/ruby-2.1.0@global/bin
- /Users/codebiker/.rvm/rubies/ruby-2.1.0/bin
- /usr/local/bin
- /usr/bin
- /bin
- /usr/sbin
- /sbin
- /usr/local/bin
- /opt/X11/bin
- /usr/texbin
- /Users/codebiker/.rvm/bin
Quand je lance rvm get head
, j'obtiens:
Upgrading the RVM installation in /Users/codebiker/.rvm/
RVM PATH line found in /Users/codebiker/.bashrc /Users/codebiker/.zshrc.
RVM sourcing line found in /Users/codebiker/.bash_profile /Users/codebiker/.zprofile.
Upgrade of RVM in /Users/codebiker/.rvm/ is complete.
Quand je lance which ruby
, j'obtiens:
/Users/codebiker/.rvm/rubies/ruby-2.1.0/bin/ruby
Et ruby -v
me donne:
ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-darwin13.0]
Conseils, des pensées, ou des conseils seraient appréciés! Je n'ai aucune idée de quel est le problème ici.
Peut-être trop évident, le bijou est installé à droite?
Type c'est cmd
Type c'est cmd
gem install mechanize
OriginalL'auteur CodeBiker | 2014-01-15
Vous devez vous connecter pour publier un commentaire.
Gemmes doit d'abord être installé avant de pouvoir
require
dans un script. Pour installer un joyau; d'abord ouvrir une fenêtre de terminal et tapez:gem install GEM-NAME
ou dans votre cas:gem install mechanize
Oui c'est exactement ça. Chaque ruby installation d'un répertoire indépendant pour les gemmes. Content d'avoir pu aider. Amusez-vous bien!
OriginalL'auteur fabbb
Si vous utilisez bundler, ajouter dans votre gemfile lien mécaniser gem:
Puis problème de faisceau de l'installation de votrerails ou un autre dossier de projet:
Assurez-vous que mécaniser gem est présent dans le gemfile.verrouillage après le bundle de l'installation.
Alors, même dans le cas où si vous n'utilisez pas le système de regroupement, assurez-vous que bundle fonde la gemme:
Alors si votre application n'est pas la rails app, il suffit de lancer votre application avec:
Si vous utiliser rvm, vous pouvez l'installer dans d'autres sertie. ou, si vous avez utilisé la racine de l'installation, il pourrait être traité comme un autre sertie aussi.
OriginalL'auteur Малъ Скрылевъ