Comment ai-je besoin d'une version spécifique d'un rubis gemme?
Plus précisément, le rubis-oci8 gem. J'ai à la fois 1.0.7 et 2.0.4 installé. Je veux 1.0.7.
Je peux juste besoin d'oci8, mais je n'ai pas la version que je veux.
irb(main):001:0> require 'oci8'
=> true
irb(main):002:0> OCI8::VERSION
=> "2.0.4"
Je peut nécessiter d'utiliser le chemin complet vers le fichier, qui fonctionne, mais n'est pas portable:
irb(main):001:0> require 'C:\Ruby\lib\ruby\gems.8\gems\ruby-oci8-1.0.7-x86-mswin32-60\lib\oci8'
=> true
irb(main):002:0> OCI8::VERSION
=> "1.0.7"
Je peux utiliser la gemme de commande pour demander la version que je veux, mais il ne semble pas réellement de charger la bibliothèque:
irb(main):001:0> gem 'ruby-oci8', :lib=>'oci8', :version=>'=1.0.7'
=> true
irb(main):002:0> OCI8::VERSION
NameError: uninitialized constant OCI8
from (irb):2
Je serais favorable à cette dernière approche si serait de charger la bibliothèque, plutôt que de simplement confirmer qu'il est présent sur mon système. Ce qui me manque?
Vous devez vous connecter pour publier un commentaire.
Mon problème était double:
1) confusion de gem syntaxe de commande que celle utilisée dans la configuration.gem lignes dans un environnement rails.rb fichier de configuration.
2) à défaut de délivrer un besoin de commande après le joyau de commande.
Bonne utilisation dans un script:
L'utilisation est appropriée dans un des rails 2.3.x environnement.rb fichier est:
Merci aux gens au http://www.ruby-forum.com/topic/109100
Essayer la syntaxe suivante (au lieu de l'exiger):