Je voulais en savoir un peu plus sur le grattage,
Implémenté en référence à Créer la source du scraping en 20 minutes en utilisant Ruby.
Puisqu'il dit "Gem devrait être installé sous le fournisseur / bundle."
Ajout de l'option --path vendor / bundle
lors de l'installation du bundle comme indiqué.
Si vous écrivez le code comme dans l'article dans main.rb et exécutez main.rb,
training $ ruby main.rb
Traceback (most recent call last):
2: from main.rb:2:in `<main>'
1: from /Users/yusaku/.rbenv/versions/2.6.0/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/Users/yusaku/.rbenv/versions/2.6.0/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- nokogiri (LoadError)
Il dit `` require ': impossible de charger un tel fichier --nokogiri (LoadError) , nokogiri a un bundle installé sous
vender / bundle`.
training $ ls vendor/bundle/ruby/2.6.0/gems/
byebug-11.1.3 method_source-1.0.0 nokogiri-1.10.10 pry-byebug-3.9.0
coderay-1.1.3 mini_portile2-2.4.0 pry-0.13.1
Si vous examinez attentivement le contenu de l'erreur,
Il semble que vous cherchiez un subordonné à / Users / yusaku / .rbenv /
.
J'ai été surpris, mais je n'ai pas fait de bundle exec.
training $ bundle exec ruby main.rb
Maintenant, j'ai pu exécuter main.rb sans aucune erreur (et j'ai pu exiger "nokogiri").
En faisant bundle exec
, il semble qu'ils aient recherché le gem dans le même répertoire.
Recommended Posts