Я размещаю на vps, ubuntu 10.04, rails 3, ruby и mysql, правильно установленных, следуя некоторым руководствам. Если я запускаю bundle check
или bundle install
получаю сообщение об ошибке «-bash: bundle: command not found». Как 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/
ruby-on-rails
bundler
raphael_turtle
источник
источник
Ответы:
Вам нужно добавить исполняемый каталог ruby gem к своему пути
export PATH=$PATH:/opt/ruby-enterprise-1.8.7-2010.02/bin
источник
export /usr/local/rvm/gems/ruby-1.9.3-p448/bin:$PATH
илиENV PATH /usr/local/rvm/gems/ruby-1.9.3-p448/bin:$PATH
с Docker.Моя проблема заключалась в том, что я сделал:
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
источник
gem install
он устанавливает его вместе с используемой в данный момент версией ruby, которую вы можете видеть, когда делаете этоrbenv versions
(она должна быть отмечена знаком *). Когда вы устанавливаете гем-сборщик, вы можете получитьbundle install
гемы, которые позволят вам устанавливать драгоценные камни для каждого проекта. Самоцветы, к которым вы склонны,gem install
- это такие вещи, как bundler и zeus. Когда тыgem install
, тебе нужноrbenv rehash
потом бежать . Просто так оно и есть.gem install bundler
и теперь все в порядке.... также для Debian GNU / Linux 6.0 :)
export PATH=$PATH:/var/lib/gems/1.8/bin
источник
Я сделал это (последняя версия 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
источник
Вероятно, защищенный от дистрибутива путь добавляет это в ваш .bashrc или .zshrc, независимо от вашей оболочки:
PATH="$(ruby -e 'print Gem.default_dir')/bin:$PATH"
или если вы установили свои драгоценные камни для всего пользователя, используйте:
PATH="$(ruby -e 'print Gem.user_dir')/bin:$PATH"
источник
Я запускаю ubuntu 11.10, и исполняемый файл пакета находился в:
/var/lib/gems/1.8/bin
источник
Мое решение заключалось в том, чтобы убедиться, что я выбрал версию 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/.........
источник
Для пользователей rbenv:
$ rbenv versions 2.6.0 $ rbenv global 2.6.0 $ ruby -v ruby 2.6.0p0 $ gem install bundler $ rbenv rehash $ bundle $ rails -v Command 'rails' not found $ rbenv rehash $ rails -v Rails 4.2.11.1
источник
Убедитесь, что вы делаете это
rbenv rehash
при установке разных рубиновисточник
Шаг 1: Убедитесь, что вы находитесь на пути к фактическому рабочему пространству. Например, рабочее пространство / блог $: Шаг 2: Введите команду: gem install bundler. Шаг 3. К настоящему моменту вы должны быть готовы к пакетной установке или пакетному обновлению
источник
В моей установке Arch Linux драгоценные камни были установлены в
~/.gem/ruby/2.6.0/bin
каталог, если они были установлены как пользователь или/root/.gem/ruby/2.6.0/bin
если были установлены черезsudo
. Просто добавьте соответствующую$PATH
переменную в свою переменную среды:export PATH=$PATH:/home/your_username/.gem/ruby/2.6.0/bin
источник
Я думаю, что исполняемый файл пакета включен:
/opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/bin
и это не в вашем $ PATHисточник
Вы также можете создать символическую ссылку:
ln -s /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/bin/bundle /usr/bin/bundle
источник
ln -s /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/bin/bundle /usr/bin/bundle
это должно быть с дополнительным,bundle
вы хотите создать символьную ссылку на пакет, а не на весь каталог bin?У меня была такая же проблема, и я смог ее решить, запустив
rbenv rehash
После этого
bundle
заработало как положено. При просмотре вики-записи rbenv в ней упоминается, что повторное хеширование следует запускать, когда установленный гем предоставляет команды.По-видимому, это настолько раздражает, что некоторые люди написали драгоценный камень, чтобы никогда не запускать его
rehash
снова. rbenv-gem-rehashисточник
Я получил эту ошибку
rbenv: bundle: command not found
после клонирования старого проекта рельсов, который я построил пару месяцев назад. Вот как я это сделал: чтобы установить определенную версию сборщика или просто выполните следующую команду, чтобы установить последний доступный сборщик:бегать
gem install bundler
затем я установил точную версию сборщика, которую хотел, с помощью этой команды:
$ gem install bundler -v "$(grep -A 1 "BUNDLED WITH" Gemfile.lock | tail -n 1)"
[подробнее см. в этой статье] ( https://www.aloucaslabs.com/miniposts/rbenv-bundle-command-not-found#:~:text=When%20you%20get%20the%20rbenv,to%20install% 20the% 20Bundler% 20gem подробнее см. В этой статье
заставить прослушивание работать, введя эту команду
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
источник