Rails постоянно сообщает мне, что он в настоящее время не установлен

86

Я использую rvmдля управления разными рубинами и их драгоценными камнями. Моя оболочка - это zsh с oh-my-zsh с базовыми настройками. Включенные плагины oh-my-zsh: ruby, rails, osx и git. Вот команда, которую я использовал для установки ruby-1.8.7 и rails-3.0.7.

rvm install 1.8.7
rvm use 1.8.7
gem install rails -v=3.0.7

а затем я набрал railsи получил:

Rails is not currently installed on this system. To get the latest version, simply type:

    $ sudo gem install rails

You can then rerun your "rails" command.

Я также пробовал более тщательную установку, например, переустановить rubygemsпосле перехода на ruby-1.8.7 или создать совершенно новый гемсет, но безуспешно.

Вот информация о rvm:

ruby-1.8.7-p352@rails:

  system:
    uname:       "Darwin yicai.local 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun  7 16:32:41 PDT 2011; root:xnu-1504.15.3~1/RELEASE_X86_64 x86_64"
    bash:        "/bin/bash => GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)"
    zsh:         "/bin/zsh => zsh 4.3.9 (i386-apple-darwin10.0)"

  rvm:
    version:      "rvm 1.8.6 by Wayne E. Seguin (wayneeseguin@gmail.com) [https://rvm.beginrescueend.com/]"

  ruby:
    interpreter:  "ruby"
    version:      "1.8.7"
    date:         "2011-06-30"
    platform:     "i686-darwin10.8.0"
    patchlevel:   "2011-06-30 patchlevel 352"
    full_version: "ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-darwin10.8.0]"

  homes:
    gem:          "/Users/nil/.rvm/gems/ruby-1.8.7-p352@rails"
    ruby:         "/Users/nil/.rvm/rubies/ruby-1.8.7-p352"

  binaries:
    ruby:         "/Users/nil/.rvm/rubies/ruby-1.8.7-p352/bin/ruby"
    irb:          "/Users/nil/.rvm/rubies/ruby-1.8.7-p352/bin/irb"
    gem:          "/Users/nil/.rvm/rubies/ruby-1.8.7-p352/bin/gem"
    rake:         "/Users/nil/.rvm/bin/rake"

  environment:
    PATH:         "/Users/nil/.rvm/gems/ruby-1.8.7-p352@rails/bin:/Users/nil/.rvm/gems/ruby-1.8.7-p352@global/bin:/Users/nil/.rvm/rubies/ruby-1.8.7-p352/bin:/Users/nil/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/sbin"
    GEM_HOME:     "/Users/nil/.rvm/gems/ruby-1.8.7-p352@rails"
    GEM_PATH:     "/Users/nil/.rvm/gems/ruby-1.8.7-p352@rails:/Users/nil/.rvm/gems/ruby-1.8.7-p352@global"
    MY_RUBY_HOME: "/Users/nil/.rvm/rubies/ruby-1.8.7-p352"
    IRBRC:        "/Users/nil/.rvm/rubies/ruby-1.8.7-p352/.irbrc"
    RUBYOPT:      ""
    gemset:       "rails"

а версия гема - 1.8.10, самая последняя.

ноль
источник

Ответы:

92

У меня была эта проблема сегодня. Не полностью связано с вашим вопросом, но поскольку эта страница появляется в Google, когда я ищу «Rails в настоящее время не установлен в этой системе» , я подумал, что добавлю свой ответ:

Случилось так, что я какое-то время использовал Ruby 1.9.2 с рельсами, но потом мне нужно было использовать Ruby 1.8.7 для запуска другого скрипта, который я нашел.

Впоследствии я хотел вернуться к использованию версии 1.9.2 в системе, и вот тут-то и началась проблема:

$ rvm list

=> ruby-1.8.7-p352 [ x86_64 ]
ruby-1.9.2-p290 [ x86_64 ]


$ rvm use 1.9.2

Я думал, что это поможет. Но нет, это дает мне сообщение «Rails в настоящее время не установлен в этой системе» .

Я забыл, что я настроил рельсы с помощью rvm gemset. Поэтому мне нужно было указать правильный гемсет, когда я выбирал, какую рубиновую версию сделать активной.

$ rvm gemset list_all


gemsets for ruby-1.8.7-p352 (found in /Users/asgeo1/.rvm/gems/ruby-1.8.7-p352)
global


gemsets for ruby-1.9.2-p290 (found in /Users/asgeo1/.rvm/gems/ruby-1.9.2-p290)
global
rails31


$ rvm use ruby-1.9.2-p290@rails31

Это сработало.

asgeo1
источник
Я тоже работал на себя, хотя у меня была установлена ​​только одна версия. Он был установлен по умолчанию, но по какой-то причине не был установлен как текущий.
hcarreras 01
Спасибо - после обновления Ruby с 2.2.1 до 2.2.3 я начал получать эту ошибку. Использование rvm ruby-2.2.1 снова сделало rails счастливыми.
slocumro
110

Если вы запускаете команду rails сразу после установки rails , вам необходимо перезапустить терминал, прежде чем ваши команды будут распознаны.

Кайл Клегг
источник
17
дох! ну вот 15 минут моей жизни, я никогда не вернусь. Спасибо.
Адам Уэйт
Спасибо ... это должно было быть на высоте. глупая ошибка, которую делают все.
Шашват Кумар
Работал у меня. Но почему?
Акаш Агарвал,
@AkashAggarwal, потому что он выполняет сценарий rvm, который позволяет распознавать команды rails (шаг, который, вероятно, был добавлен в ваш .bash_profile во время установки). В качестве альтернативы вы можете сделать то, что Дхаулагири предложил перезагрузить в текущей оболочке.
Кайл Клегг
Это правильный ответ. Просто перезапустите свой терминал.
посмотрите
30

Mac OS X, rbenv и rails

У меня была такая же проблема, но с rbenvчем rvm. После проверки правильности .bash_profile.

.bash_profile

export PATH="$HOME/.rbenv/bin:/usr/local/bin:$PATH"

eval "$(rbenv init -)"

Перезагрузите оболочку

exec $SHELL -l

Проверить путь

echo $PATH

в заключение

Я неоднократно устанавливал и удалял rails, но он никогда не помещался в каталог .rbenv / bin после повторного хеширования rbenv. В конце концов, я find . -name railsудалил все возвращенные драгоценные камни и удалил направляющие. Затем:

$ gem install rails
$ rbenv rehash

$ which rails
/Users/palmerc/.rbenv/shims/rails
Кэмерон Лоуэлл Палмер
источник
28

У меня была такая же проблема, и я обнаружил, что RVM не отображается как установленный, если я попробовал команду rvm. Все, что потребовалось для решения обеих проблем, - это запустить эту команду в терминале.

$ source ~/.rvm/scripts/rvm
Дхаулагири
источник
День спас ... Что это значит? :)
ericpeters0n
13

Перезагрузите терминал, а затем повторно запустите команду rails

Палермо Андре Дешам
источник
1
Вау, я чувствую себя такой тупой, у меня тоже получилось! Иногда
Андреа
Я использую Linux, и это работает. похоже на использование windows: D
Esgi Dendyanri
11

Rails не сообщает, что он не установлен. Ваша система Debian сообщает вам, что rails не установлены. Одна вещь о rvm заключается в том, что он полагается на некоторые сложные сценарии оболочки bash, и вам иногда нужно запустить новую оболочку, чтобы изменения появились. Вы также должны убедиться, что в ваш файл .zshrc добавлены правильные команды оболочки rvm. Также проверьте свой путь, чтобы убедиться, что путь ~ / .rvm / gems / ... включен.

Дэвид Нехме
источник
1
Это было для меня, просто нужно было выйти из папки и вернуться, чтобы снова получить консоль rails. Проблема с открытыми окнами терминала в течение нескольких дней ...
toxaq
Это было и для меня. Никогда не думал закрыть окно терминала и снова открыть. Как только я сделал это после обновления Ruby, все заработало, как ожидалось.
MikeH
9

Я столкнулся с этой проблемой, используя rbenv. Оказывается, gem install railsдействительно установил Rails, но railsне был распознан как исполняемый файл. Исправление для меня заключалось в том, чтобы бежать rbenv rehash.

Я нашел это исправление и более подробную информацию о настройке Rails 5 на https://gorails.com/setup/osx/10.11-el-capitan

Уилсон
источник
Для меня я сделал это rmvпосле того, как уже работал rbenv и Rails. Он сломал все, включая компакт-диск, комплект и направляющие, и теперь я буквально не могу даже щелкнуть правой кнопкой мыши трекпадом на Mac. Веселые времена.
Ka Mok
3

У меня была аналогичная проблема, но с rbenv.

Изначально я установил Ruby на bash. Затем я поигрался с .bashrc в VIM, испортил этот файл и сбросил его до значений по умолчанию. При этом я неосознанно удалил экспортированный rbenv $ PATH. Из-за этого мой терминал больше не распознал, что у меня установлен Ruby.

Я снова зашел на страницу установки ruby ​​( https://gorails.com/setup/ubuntu/15.04 ) и снова попытался настроить свой путь rbenv с помощью этой команды:

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc

Это не удалось.

К счастью, я уже переключился на zsh (с помощью oh-my-zsh) между тем временем, когда я испортил свой .bashrc, и тем временем, когда я пытался получить доступ к irb с моего терминала.

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

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc

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

Юнис
источник
1

Вот что я сделал. И проблема ушла. Следовательно, я думаю, проблема решена.

rvm use system

меняем на системный рубин. удалите все драгоценные камни в нем, используя предоставленную и объясненную здесь команду . Затем я устанавливаю нужные версии Ruby с нуля:

rvm install 1.8.7
rvm install rails -v 3.0.7

тогда bundle install

для получения дополнительных сведений, возможно, потребуется углубиться в процедуру установки драгоценного камня.

ноль
источник
1

добавьте source ~/.rvm/scripts/rvmв свой .bashrcфайл, если рельсы устанавливаются нормально, но вы получаете сообщение об ошибке «Рельсы в настоящее время не установлены». Это меня некоторое время расстраивало, но я нашел ответ здесь: http://www.codelearn.org/blog/how-to-install-ruby-rails-screencasts-linux-mac-windows

Коннор Лич
источник
1

Сегодня у меня была эта проблема. Я не решил это на 100%, но в новых вкладках я могу это сделать, rvm use 2.5.5а затем rails -vотлично работает.

➜  my-repo git:(next_release) ruby -v
ruby 2.5.5p157 (2019-03-15 revision 67260) [x86_64-darwin18]
➜  my-repo git:(next_release) rails -v
Rails is not currently installed on this system. To get the latest version, simply type:

    $ sudo gem install rails

You can then rerun your "rails" command.
➜  my-repo git:(next_release) rvm use 2.5.5
Using /Users/amberwilkie/.rvm/gems/ruby-2.5.5
➜  my-repo git:(next_release) rails -v
Could not find rake-12.3.3 in any of the sources
Run `bundle install` to install missing gems.
➜  my-repo git:(next_release) bundle install
Янтарь
источник
1

Я столкнулся с этой проблемой, но она решена. Я использую macOS, я не использую rvm, я только использую HomeBrew, я сначала использую, gem envчтобы получить каталог установки всех драгоценных камней, мой:

$ gem env
RubyGems Environment:
   -RUBYGEMS VERSION: 3.1.2
   -RUBY VERSION: 2.7.1 (2020-03-31 patchlevel 83) [x86_64-darwin19]
   -INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/2.7.0
   -USER INSTALLATION DIRECTORY: /Users/myname/.gem/ruby/2.7.0
...

Затем вы пытаетесь перейти к, /usr/local/lib/ruby/gems/2.7.0чтобы найти каталог исполняемых файлов установленного вами гема rails, например:, /usr/local/lib/ruby/gems/2.7.0/binзатем добавьте в переменную среды path

Trump_Cute
источник
0

У меня была та же проблема, но решение выше не помогло.

Это был мой сценарий

rvm list

=> ree-1.8.7-2012.02 [ i686 ]
   ruby-1.9.3-p125 [ x86_64 ]

which ruby
  /Users/dev/.rvm/rubies/ree-1.8.7-2012.02/bin/ruby
which rails
  /usr/bin/rails
gem list --local
  ..
  rails (3.2.8)
  rails2_asset_pipeline (0.1.20)
  railties (3.2.8)
  ..

rvm use ruby-1.9.3-p125
which ruby
  /Users/dev/.rvm/rubies/ruby-1.9.3-p125/bin/ruby
which rails
  /Users/dev/.rvm/gems/ruby-1.9.3-p125/bin/rails

Моя проблема была решена путем удаления рельсов и рельсов и переустановки рельсов при использовании ree.

Надеюсь, это поможет другим в моей ситуации, не знаю, как я в нее попал: S

mriddle89
источник
0

У меня была та же проблема, я удалил свой .rvmrc, rvm --create --rvmrc 1.8.7@projectгде 1.8.7@project - это то, что вы хотите, чтобы ваш рубин был. входил и выходил, и это сработало. http://sirupsen.com/get-started-right-with-rvm/

Матильда
источник
0

У меня была такая же проблема, и я не мог найти ответа. Вот что я сделал:

найти текущий путь рельсов

$ which rails

возвращает что-то вроде этого: / usr / local / rails

Удалить текущую версию :

$ sudo rm -rf /usr/local/rails 

Установите рельсы

$ sudo gem install rails
im_benton
источник
2
НЕ делайте этого для Mac OS
Брюки
0

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

Я возился с моими .profileи .bashrcфайлами и по пути испортил установку RVM. Все еще не совсем понимаю, что я сделал, но исправить это было легко. Просто нужно было запустить следующую команду, которая очищает все настройки вашего системного пути для RVM:

rvm get [head|stable] --auto-dotfiles

Обратите внимание: если вы используете старую версию RVM, это может обновить вашу установку, что может быть не тем, что вам нужно.

Дэн
источник
0

Возможное решение - не поддерживать два разных файла конфигурации .bash_profileи.bashrc

Решение, предложенное в этом отличном сообщении о разнице между .bash_profileи, .bashrcзаключается в том, чтобы использовать источник .bashrcиз вашего .bash_profileфайла, а затем поместить PATH и общие настройки в .bashrc.

Цитата,

добавьте следующие строки в .bash_profile:

if [ -f ~/.bashrc ]; then source ~/.bashrc fi

конец цитаты

осехгол
источник
0

У меня была эта ошибка после обновления рубина. Мне пришлось запустить установку пакета, чтобы исправить это.

Джош Хантер
источник
0

Попробуйте явно указать gemset в вашем Gemfile:

source 'https://rubygems.org'
ruby "2.2.3"
#ruby-gemset=rails424
Яру
источник
0

Попробуй это:

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

Иногда требуется использовать /bin/bash --loginкак команду.

$ bin/bash --login
$ rails -v
Магере
источник
0

У меня было это сообщение на моем Mac:

Rails в настоящее время не установлен в этой системе. Чтобы получить последнюю версию, просто введите:

и это было о $PATHнеправильном. В системе используется устаревшая версия rails ( /usr/bin/ruby). Путь к выбранной вами версии ruby ​​( $HOME/.rbenv/versions/2.3.0/bin) должен предшествовать устаревшей версии системы вдоль $PATHvar, как показано ниже:

export PATH="$HOME/.rbenv/versions/2.3.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:$PATH"

настройте его на свою версию рубина.

Элиандро
источник
0

Для MacOS (High Sierra):

Tokaido - это система установки Rails, рекомендованная на странице руководства Rails «Приступая к работе» для Mac OS. Но он не просто устанавливается, он запускает собственные сценарии оболочки. Если вы начнете использовать это, которое является источником собственной среды оболочки, а затем запустите терминал без запуска из оболочки Tokaido, это произойдет, потому что команда «rails» возвращается к исходному коду системы rails на Mac.

На мой взгляд, команда 'which rails' в обычном терминале возвращает

/usr/bin/rails

Но после запуска оболочки Токайдо 'which rails' дает следующий путь:

/Users/charlesross/.tokaido/Gems/2.2.0/bin/rails
Чарльз Росс
источник
0

В настоящее время Rails из ниоткуда не установлен, но что исправлено? rvm use ruby-2.6.0

... и проверил мой путь в .bash_profile export PATH="$PATH:$HOME/.rvm/bin"

Аарон Морено
источник
0

Я просматривал источник и нашел еще одно сообщение об ошибке, в котором пользователю предлагалось выполнить следующую команду.

Я запустил команду, и теперь все работает. Ни одно из приведенных выше предложений не помогло мне. Запустите команду из недавно созданного приложения Rails.

gem pristine --all
Клинт Госсетт
источник