Ответ 1
GEM_PATH предоставляет места (их может быть несколько), где можно найти драгоценные камни.
GEM_HOME - это где камни будут установлены (по умолчанию).
(Поэтому GEM_PATH должен включать GEM_HOME).
RubyGems - это менеджер пакетов для языка программирования Ruby, который предоставляет стандартный формат для распространения программ и библиотек Ruby (в автономном формате, называемом "драгоценный камень" ), инструмент, предназначенный для легкого управления установкой драгоценных камней и сервер для их распространения. Это аналогично EasyInstall для языка программирования Python. RubyGems теперь входит в стандартную библиотеку из Ruby версии 1.9.
Тем не менее, какая разница между GEM_HOME и GEM_PATH?
GEM_PATH предоставляет места (их может быть несколько), где можно найти драгоценные камни.
GEM_HOME - это где камни будут установлены (по умолчанию).
(Поэтому GEM_PATH должен включать GEM_HOME).
Также интересное уведомление. По крайней мере, на Wndows XP, не знаете о других платформах.
Установите GEM_HOME
в Windows:
C:\>set GEM_HOME=C:\sbox\ruby\dump\.gems
Теперь проверьте это.
1) В Windows ENV. Все ОК, как и ожидалось:
C:\>set
...
GEM_HOME=C:\sbox\ruby\dump\.gems
...
2) С gem env
. Обратите внимание, что он ставит GEM_HOME
вместе с GEM_PATH
, но в первую очередь:
C:\>gem env
RubyGems Environment:
- RUBYGEMS VERSION: 2.0.3
- RUBY VERSION: 2.0.0 (2013-02-24 patchlevel 0) [i386-mingw32]
- INSTALLATION DIRECTORY: C:/sbox/ruby/dump/.gems
- RUBY EXECUTABLE: C:/Ruby200/bin/ruby.exe
- EXECUTABLE DIRECTORY: C:/sbox/ruby/dump/.gems/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86-mingw32
- GEM PATHS:
- C:/sbox/ruby/dump/.gems
- C:/Documents and Settings/User/.gem/ruby/2.0.0
- C:/Ruby200/lib/ruby/gems/2.0.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
3) Теперь с bundle env
:
C:\>bundle env
Bundler 1.3.4
Ruby 2.0.0 (2013-02-24 patchlevel 0) [i386-mingw32]
Rubygems 2.0.3
GEM_HOME C:\sbox\ruby\dump\.gems
GEM_PATH
GEM_PATH
пуст, это означает значение по умолчанию. Но откуда это берется значение по умолчанию? См. gem env
.