Estoy tratando de obtener algunas gemas trabajando en un host web que soporte ruby y algunas gemas de rubí, pero no algunas de las que necesito usar.Ruby gema listada, pero no se cargará (gema en dir de usuario, no ruby dir)
Siguiendo las instrucciones que encontré here, me quedé con la ubicación de la gema original en mi camino joya, y añade la mía en/ruta/a/mi/home/gemas a ~/.gemrc
gemhome: /users/home/myuser/gems
gempath:
- /usr/local/lib/ruby/gems/1.8
- /users/home/mysuser/gems
I descargué algunas gemas manualmente y las instalé usando las opciones --local y --install-dir del comando gem. Luego hice una "lista de gemas", y de hecho puedo ver las gemas que instalé en mi directorio de usuario, así como las gemas originales en la ruta normal del sistema.
Si pateo IRB o hago un rubí -e, todas las gemas del sistema funcionan bien. Sin embargo, no puedo conseguir mi directorio de usuarios gemas instaladas cargado:
$ ruby -r rubygems -e "require 'nokogiri'"
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require__': no such file to load -- nokogiri (LoadError)
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require'
from -e:1
Incluso he intentado la vieja escuela require_gem:
$ irb -r rubygems
irb(main):001:0> require_gem 'nokogiri'
Gem::LoadError: Could not find RubyGem nokogiri (> 0.0.0)
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:204:in `report_activate_error'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:141:in `activate'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:37:in `require_gem_with_options'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:31:in `require_gem'
from (irb):1
de mi "lista de gemas" Puedo ver:
nokogiri (1.3.3)
Nokogiri is an HTML, XML, SAX, and Reader parser
Tengo el mismo problema con todas las gemas de instalación del directorio de usuario. ¿Que me estoy perdiendo aqui?
EDITAR: Esta es no una aplicación de rieles. Esto es para una aplicación de línea de comando. El programa será ejecutado por mi cuenta de usuario, al igual que las pruebas que se muestran arriba en.
EDIT: por sugerencia de Rafe, miré a Gem.path desde IRB. Es solo enumera la ruta de la gema del sistema, /usr/local/lib/ruby/gems/1.8, y no la ruta de mi directorio de usuario también.
¿Qué se muestra cuando solo escribe la expresión "Gem.path" en irb? – Rafe
Ahh, interesante ... ver la edición anterior, – Matt