Comment vérifier si un bijou est installé?
J'ai installé data_mapper pour un Sinatra projet. Curieux, pourquoi est-il lorsque je ne gem install brew
, je peux $ which brew
et obtenir le chemin de son emplacement et ne peut pas pour data_mapper? Cela fonctionne pour certaines gemmes et ne pas pour les autres.
Comment puis-je vérifier un bijou est installé correctement? Serait-vérification de la version d'assurer la gemme est téléchargé correctement?
- vous pouvez essayer ce stackoverflow.com/a/32986687/3728916
Vous devez vous connecter pour publier un commentaire.
Solution générale
Essayer
gem list
pour obtenir la liste des gemmes qui sont installés.De test pour un bijou particulier, vous pouvez utiliser
-i
avec une regex:gem list -i "^gem_name$"
.(Crédit à Timo dans les commentaires pour cette technique.)
Solution particulière pour l'OP
Si vous ne pouvez pas trouver data_mapper, il se peut que le gem nom est différent de ce à quoi vous vous attendez.
Aussi, si vous êtes juste faire
which brew
de trouver de bière, vous n'êtes pas à trouver le bijou appelé brew, vous êtes à la recherche de l'emplacement de l'infusion de l'exécutable. Essayezgem which brew
à la place.EDIT:
Si vous êtes à la recherche pour data_mapper en faisant
which data_mapper
, vous n'aurez probablement pas à le trouver.which
est un programme unix pour trouver les exécutables unix, et data_mapper n'a sans doute pas un.Depuis votre but est de vérifier une gemme est installé avec la version correcte, utilisez
gem list
. Vous pouvez limiter la à la, joyau de l'aidegem list data_mapper
.Pour vérifier qu'il est installé et de travail, vous devrez essayer de
require
le gem et ensuite l'utiliser dans votre code.gem list
a montré que j'ai data_mapper. Negem which brew
trouver l'exécutable? Il ressemble à un .rb fichiergem which somegemname
montre le chemin (je pense) le fichier qui se charge lorsque vous nerequire 'somegemname'
. En général, les pierres n'ont pas 'exécutable' dans la façon dont un programme qui vous auriez à découvrir via régulière unixwhich
faire.Dans le cas où vous souhaitez utiliser le chèque dans un script, ce qui donne un meilleur rendement (vrai ou faux) et de sortie code:
Sinon ajouter l'option version:
gem list
prend comme argument une expression régulière pour le match contre. Ainsi, dans le cas où vous dirais quelque chose commegem list -i zip
il y a potentiellement beaucoup de différentes pierres précieuses, cela peut correspondre à (gem list -r zip | wc -l
retourne 197 de cette écriture). Toutefois, si vous vous intéressez particulièrement à la fermeture éclair bijou que vous devriez dire à dire dans la regexp zip, c'est à diregem list -i ^zip$
. Sinongem install spain_zip_codes && gem list -i zip
=> true, ce qui n'est sans doute jamais ce que vous voulez avec ce.-e
commegem list -ie zip