[Ruby] Le gem doit avoir été installé dans le fournisseur / bundle, mais une erreur se produit dans require.

Contexte

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é.

Erreur est survenue

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

Solution

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

[Ruby] Le gem doit avoir été installé dans le fournisseur / bundle, mais une erreur se produit dans require.
Il doit être identique à l'exemple lors de la connexion à Twitter, mais une erreur se produit jusqu'à la résolution
Je ne peux pas importer le package qui aurait dû être installé par conda sur Anaconda
Une erreur se produit lorsque codedeploy-agent est installé dans Ubuntu Server 20.04
Je ne vois pas d'erreur dans l'installation du bundle Rails ... la solution
Si la version JDK est correcte dans Eclipse mais qu'une erreur se produit ou que le compilateur ne fonctionne pas correctement
référentiel Le gem spécifié est le bundle installé mais pas mis à jour vers la dernière version
Personnalisez l'affichage lorsqu'une erreur telle que 404 Not Found se produit dans Spring Boot