4

Я использую некоторые локально установленные гемы в своей среде, и я хотел бы изменить путь EXECUTABLE EXECUTABLE DIRECTORY на ~/.gem/bin

Как я мог этого добиться?

$gem env

  - RUBYGEMS VERSION: 2.2.2
  - RUBY VERSION: 2.1.5 (2014-11-13 patchlevel 273) [x86_64-linux]
  - INSTALLATION DIRECTORY: /home/flyer/.gem/ruby
  - RUBY EXECUTABLE: /usr/bin/ruby
  - EXECUTABLE DIRECTORY: /home/flyer/bin
  - SPEC CACHE DIRECTORY: /home/flyer/.gem/specs
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /home/flyer/.gem/ruby
     - /usr/share/gems
     - /usr/local/share/gems
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - https://rubygems.org/
  - SHELL PATH:
     - /usr/local/bin
     - /usr/local/sbin
     - /usr/bin
     - /usr/sbin
     - /bin
     - /sbin
     - /home/flyer/.local/bin
     - /home/flyer/bin
     - /home/flyer/.local/bin
     - /home/flyer/bin

2 ответа2

2

Если вы намеревались установить исполняемые файлы gems в ~/.gem/bin, вы можете установить в ~/.gemrc:

gem:
 --bindir ~/.gem/bin 
 # any other gem settings like: 
 --no-ri --no-rdoc

Это НЕ изменит EXECUTABLE DIRECTORY , но исполняемые файлы gems будут установлены в ~/.gem/bin . Вы можете проверить это установлено:

$ gem env
- GEM CONFIGURATION:
     - "gem" => "--bindir ~/.gem/bin --no-ri --no-rdoc"

Чтобы иметь возможность вызывать их, добавьте этот каталог в начале вашей PATH .

2

Ты можешь попробовать

$ export GEM_HOME = ~/.gem

Это изменит каталог вашего исполняемого файла gem на ~/.gem/bin

Вы можете подтвердить это, запустив $ gem env снова

Если это работает, вы можете сделать его постоянным, добавив export GEM_HOME=$HOME/.gem в конец файла .bashrc или .zshrc

Надеюсь, что это поможет!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .