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

Я использую 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, самой последней.

31 ответ

Решение

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

Случилось так, что я некоторое время использовал ruby ​​1.9.2 с rails, но затем мне нужно было использовать 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, когда я выбирал, какую версию ruby ​​сделать активной.

$ 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

Это добилось цели.

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

Mac OS X, rbenv и рельсы

Я получал точно такую ​​же проблему, но с rbenv скорее, чем rvm, После проверки правильности.bash_profile.

.bash_profile

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

eval "$(rbenv init -)"

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

exec $SHELL -l

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

echo $PATH

в заключение

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

$ gem install rails
$ rbenv rehash

$ which rails
/Users/palmerc/.rbenv/shims/rails

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

$ source ~/.rvm/scripts/rvm

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

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

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

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

Я столкнулся с этой проблемой, но она решена. Я использую 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, затем добавьте в переменную среды пути

Я нашел эту проблему, но приведенные выше решения не решили ее. Я не использую rvm (и работаю на Mac), и мне пришлось обновить путь, чтобы добавить исполняемый каталог rails:

      echo 'export PATH="/usr/local/lib/ruby/gems/3.0.0/bin:$PATH"' >> ~/.zshrc

У меня была похожая проблема, но с 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

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

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

Для меня (MacOS Monterey, rbenv) добавление версии rails в команду установки gem помогло решить проблему.

вы можете найти конкретную версию rails, которая соответствует вашему ruby, по этой ссылке и заменить VERSION .

      gem install rails -v VERSION
rbenv rehash 

после успешной установки, рельсы должны быть добавлены в /Users/your_user/.rbenv/shims

Также, пожалуйста, проверьте, что ваш каталог shims должен быть первым элементом вашего пути.

      ➜  ~ echo $PATH # 
/Users/ario/.rbenv/shims: ...

Я только что перезагрузил свой терминал

source ~/.bashrc

Смотрите: Как я могу перезагрузить.bashrc без выхода из системы и обратно?

У меня была эта проблема сегодня. Я не на 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

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

rvm use system

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

rvm install 1.8.7
rvm install rails -v 3.0.7

затем bundle install

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

Пользователи Rbenv

У меня была такая же проблема, и это сработало для меня.

Установка рубиновой версии в текущем каталоге.

      rbenv local 2.7.1

Тогда я смог бежать rails new

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

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

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

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

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

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

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

gem pristine --all

Для пользователей РВМ

вам также необходимо создать драгоценный камень:

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

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

$ sudo gem install rails

Затем вы можете повторно запустить команду «rails».

тогда попробуй

      rvm gemset create <you gemset name>
rvm use gemset <newly created gemset>
bundle install
rails s 

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

       * ruby-2.3.4 [ x86_64 ]
   ruby-2.5.3 [ x86_64 ]
   ruby-2.6.0 [ x86_64 ]
=> ruby-3.2.1 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

Перед текущей используемой версией должна стоять звездочка, как указано выше.

Вот как это сработало для меня:

  1. Установите rvm на Mac, следуя инструкциям по установке на Mac.

  2. rvm install ruby

  3. gem install rails

  4. rails --version

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

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

$ which rails

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

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

$ sudo rm -rf /usr/local/rails 

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

$ sudo gem install rails

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

source 'https://rubygems.org'
ruby "2.2.3"
#ruby-gemset=rails424

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

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

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

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

$ bin/bash --login
$ rails -v

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

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

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

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

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

Для MacOS (High Sierra):

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

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

/usr/bin/rails

Но после запуска оболочки Tokaido, "который рельсы" дает этот путь:

/Users/charlesross/.tokaido/Gems/2.2.0/bin/rails

Я следил за курсом ruby-on-rails проекта Odin от

  • установка рбенв,

  • добавлениеeval "$(rbenv init -)"к~/.zshrc

  • установка драгоценных камней рельсов

  • попытка запуститьrails new my_first_rails_app

Но я забыл бежатьsource ~/.zshrcпосле редактирования файла, поэтому я видел ошибку:

Rails в настоящее время не установлен в этой системе.

Из ниоткуда в данный момент Rails не был установлен, но что было исправлено rvm use ruby-2.6.0

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

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

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

Цитирование,

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

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

конец цитаты

Другие вопросы по тегам