Próbuję dostać jakieś perełki pracuje na web-host, który obsługuje kilka klejnotów Ruby i Ruby, ale nie tylko niektóre z nich muszę używać.Ruby klejnot na liście, ale przyzwyczajenie obciążenia (gem w katalogu użytkownika, nie rubin dir)
Postępując zgodnie z instrukcjami znalazłem here, ja zachowałem oryginalną lokalizację klejnot w mojej ścieżce gem i dodał własne w/path/to/my/home/kamienie do ~/.gemrc
gemhome: /users/home/myuser/gems
gempath:
- /usr/local/lib/ruby/gems/1.8
- /users/home/mysuser/gems
I pobierał kilka klejnotów ręcznie i instalował przy użyciu opcji --local i --install-dir polecenia gem. Następnie zrobiłem "listę klejnotów" i faktycznie widzę klejnoty zainstalowane w moim katalogu użytkownika, a także oryginalne klejnoty w normalnej ścieżce systemowej.
Gdybym kopać na IRB lub zrobić -e rubinowy, wszystkie kamienie systemowe działają dobrze. Jednak nie mogę się moim katalogu użytkownika zainstalowane perełki załadowany:
$ 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
Próbowałem nawet starej szkoły 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
Z mojej „listy klejnotów” widzę:
nokogiri (1.3.3)
Nokogiri is an HTML, XML, SAX, and Reader parser
Mam ten sam problem z wszystkimi klejami instalacyjnymi katalogu użytkownika. Czego tu mi brakuje?
EDYCJA: Jest to nie aplikacja szyny. Dotyczy to aplikacji linii poleceń. Program będzie realizowany przez mojego konta użytkownika, tak jak pokazano powyżej testy w
EDIT:. Za sugestią Rafe jest, spojrzałem na Gem.path z IRB. IT tylko listy ścieżka System gem, /usr/local/lib/ruby/gems/1.8, a nie moja droga użytkownik reż jak dobrze.
Co jest wyświetlane, gdy po prostu wpisujesz wyrażenie "Gem.path" w irb? – Rafe
Ahh, ciekawe ... patrz powyżej powyżej: – Matt