74 votes

Quelle est la différence entre GEM_HOME et GEM_PATH?

RubyGems est un gestionnaire de paquet pour le langage de programmation Ruby qui fournit un format standard pour la distribution de Rubis des programmes et des bibliothèques (dans un format appelé "gem"), un outil conçu pour gérer facilement l'installation de pierres précieuses, et un serveur pour les distribuer. Elle est analogue à EasyInstall pour le langage de programmation Python. RubyGems est maintenant partie de la bibliothèque standard de version de Ruby 1.9.

Cela dit, quelle est la différence entre GEM_HOME et GEM_PATH?

93voto

Michiel de Mare Points 15888

GEM_PATH fournit les emplacements (il peut y en avoir plusieurs) où les pierres précieuses peuvent être trouvés.

GEM_HOME est où gemmes sera installé (par défaut).

(Donc GEM_PATH devrait inclure GEM_HOME).

14voto

Green Points 2043

Intéressant aussi de l'avis. Au moins sur Windows XP, je ne sais pas sur les autres plates-formes.

Ensemble GEM_HOME sous Windows:

C:\>set GEM_HOME=C:\sbox\ruby\dump\.gems

Maintenant, nous allons vérifier cela.

1) Dans Windows ENVs. Tout est OK, comme prévu:

C:\>set
...
GEM_HOME=C:\sbox\ruby\dump\.gems
...

2) gem env. De l'avis qu'il met GEM_HOME avec GEM_PATHs, mais à la première place:

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) Maintenant, avec 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 est vide, cela signifie que la valeur par défaut. Mais d'où vient-il de la valeur par défaut? Voir gem env.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X