bundle: команда не найдена - PullRequest
127 голосов
/ 12 октября 2010

Я размещаюсь на vps, ubuntu 10.04, rails 3, ruby ​​и mysql, установленных правильно, следуя некоторым учебникам.Если я запускаю bundle check или bundle install, я получаю ошибку «-bash: bundle: команда не найдена».Начиная с gem list --local я вижу, что 'bundler (1.0.2, 1.0.0)' установлен.

Я не знаю, что происходит ...

gem environment возвращает:

 RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.7
  - RUBY VERSION: 1.8.7 (2010-04-19 patchlevel 253) [i686-linux]
  - INSTALLATION DIRECTORY: /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8
  - RUBY EXECUTABLE: /opt/ruby-enterprise-1.8.7-2010.02/bin/ruby
  - EXECUTABLE DIRECTORY: /opt/ruby-enterprise-1.8.7-2010.02/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-linux
  - GEM PATHS:
     - /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8
     - /root/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/

и echo $PATH возвращает:

/opt/myruby/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/bin/gem:/opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/:/root/.gem/ruby/1.8

и which gem возвращает:

/usr/bin/gem

locate bundle возвращает:

/opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/

Ответы [ 12 ]

186 голосов
/ 26 июня 2013

Моя проблема заключалась в том, что я сделал:

sudo gem install bundler

Поэтому я установил как root, а не как я.Поэтому я удалил от имени пользователя root, а затем установил от себя:

sudo gem uninstall bundler
gem install bundler
rbenv rehash

(последняя команда, если вы используете rbenv)

И это сработало.«Правильный» путь был в .bashrc (или другом профиле оболочки), по крайней мере, в соответствии с

$PATH
=> zsh: /Users/myself/.rbenv/shims:/Users/myself/.rbenv/bin: ... etc

, но он ожидал, что он будет установлен для меня - не для root,В моем случае его законное место установки находится в ~/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/bundler

83 голосов
/ 12 октября 2010

Вам необходимо добавить каталог с исполняемым файлом ruby ​​gem в ваш путь

export PATH=$PATH:/opt/ruby-enterprise-1.8.7-2010.02/bin
25 голосов
/ 18 января 2012

... также для Debian GNU / Linux 6.0:)

export PATH=$PATH:/var/lib/gems/1.8/bin
12 голосов
/ 27 марта 2013

Я сделал это (последняя версия Ubuntu от марта 2013 г. [я думаю :)]):

sudo gem install bundler

Кредит идет на Рэй Бакстер .

Если вынужен гем, я установил Ruby таким образом (хотя это хронически обременительно):

mkdir /tmp/ruby && cd /tmp/ruby
wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p327.tar.gz
tar xfvz ruby-1.9.3-p327.tar.gz
cd ruby-1.9.3-p327
./configure
make
sudo make install
3 голосов
/ 24 октября 2017

Вероятно, дистрибутивный путь добавляет это в ваш .bashrc или .zshrc, независимо от того, какая у вас оболочка:

PATH="$(ruby -e 'print Gem.default_dir')/bin:$PATH"

или если вы установили свои гемы для всего пользователя, используйте:

PATH="$(ruby -e 'print Gem.user_dir')/bin:$PATH"
3 голосов
/ 05 декабря 2011

Я использую Ubuntu 11.10, и исполняемый файл пакета находится в:

/var/lib/gems/1.8/bin
1 голос
/ 14 июня 2016

Шаг 1. Убедитесь, что вы находитесь на пути к фактическому рабочему пространству. Например, рабочее пространство / блог $ Шаг 2: Введите команду: gem install bundler. Шаг 3: Вы должны быть полностью готовы к установке пакета или обновлению пакета

1 голос
/ 07 августа 2015

Моим решением было убедиться, что я выбрал версию Ruby для этого репо.

Пример: chruby 2.2.2 или rvm use 2.2.2

λ bundle install
zsh: command not found: bundle

λ ruby -v
ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]

### Notice the system Ruby version isn't included in chruby

λ chruby
  ruby-1.9.3-p551
  ruby-2.1.2
  ruby-2.2.1

### Select a version via your version manager

λ chruby 1.9.3

### Ensure your version manager properly selects a version (*)

λ chruby
 * ruby-1.9.3-p551
   ruby-2.1.2
   ruby-2.2.1

λ bundle install
Fetching gem metadata from https://rubygems.org/.........
0 голосов
/ 16 декабря 2015

У меня возникла та же проблема, и я смог ее решить, запустив

rbenv rehash

После этого bundle работал как положено. Взглянув на запись вики rbenv, она упоминает, что rehash должен запускаться, когда установленный гем предоставляет команды.

Устанавливает прокладки для всех исполняемых файлов Ruby, известных rbenv (т.е. ~ / .Rbenv / версия / / bin / ). Запустите эту команду после установки нового версия Ruby, или установите гем, который предоставляет команды.

Очевидно, что это настолько раздражает, что некоторые люди написали драгоценный камень, чтобы убедиться, что вам больше никогда не придется запускать rehash. rbenv-гем-перепев

0 голосов
/ 12 июня 2014

Убедитесь, что вы делаете rbenv rehash при установке различных рубинов

...