Я недавно установил Rails 3.2.1 (версия Gem 1.8.7), работающую на Ruby 1.9.3 в Ubuntu 11.10. Я установил ruby, rails и gem, используя rvm. В настоящее время у меня установлена только одна версия. Когда я набираю "ruby -v" в обычном каталоге, я вижу 1.9.3, как ожидалось, и когда я печатаю rails -v, я вижу 3.2.1, как и ожидалось.
Это позволяет мне набирать «rails new sample» для создания приложения rails, называемого sample. Если я перехожу в каталог «sample» и набираю «rails server», он говорит, что rails не установлен. Поэтому я проверил переменную $ PATH, и это не то, что я ожидаю увидеть. Вот вывод, который я сейчас вижу.
Если в каталоге «sample» я набираю «rvm --default use 1.9.3», rails снова распознается. Кто-нибудь имеет представление о том, как это происходит, или о том, с чего начать поиск? Заранее спасибо.
Во-первых, это на самом деле не ответ относительно , почему он имеет это, а скорее решение / обходной путь.
Сначала давайте создадим приложение rails:
jrg @ discovery: ~ / code $ rails new sample
Затем нам нужно сделать .rvmrc
файл для нашего приложения. Подробнее о том, почему это важно здесь , но основная идея заключается в том, что он изолирован. Сохраните это в приложении rails sample
(поэтому, если оно в ~ / code, нам нужно сохранить .rvmrc в ~ / code / sample / .rvmrc)
Все, что должен содержать файл .rvmrc, это: что-то вроде этого:
rvm --create 1.9.3@$project
Измените $ project на то, что вы хотите, это не имеет значения.
Затем перейдите в ~ / code / sample, и вас встретит страшное предупреждение:
Потому что вы знаете, что в этом, вы можете смело набирать y
для да, хотя я настоятельно рекомендую набирать v
(для просмотра) с любыми странными .rvmrc - они могут быть угрозой безопасности, хотя я не видел ни одного .
Теперь запустите bundle install
, чтобы установить все ваши драгоценные камни. Наслаждайтесь!