«Файл не найден: lib» при переходе на более старую версию rails с использованием RVM - PullRequest
1 голос
/ 06 декабря 2010

У меня в настоящее время есть рельсы 3.0.3, и я пытаюсь загрузить и использовать версию 3.0.1.Я скачал и установил RVM и ввел следующий код в Терминале (у меня Mac OS X 10.6.5):

rvm use 1.8.7
rvm gemset create rails3.0.1
rvm 1.8.7@rails3.0.1
sudo gem install rails --version=3.0.1

Я использую самоцветы sudo из-за пользовательских разрешений или из-за отсутствия,В любом случае, после ввода последней строки кода: "sudo gem install rails --version = 3.0.1" я получаю следующую ошибку:

Successfully installed rails-3.0.1
1 gem installed
Installing ri documentation for rails-3.0.1...
File not found: lib

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

rails -v
/Library/Ruby/Site/1.8/rubygems.rb:779:in `report_activate_error': Could not find  RubyGem rails (>= 0) (Gem::LoadError)
from /Library/Ruby/Site/1.8/rubygems.rb:214:in `activate'
from /Library/Ruby/Site/1.8/rubygems.rb:1082:in `gem'
from /usr/bin/rails:18

Кроме того, я уже установил Rdoc и Xcode (я провел исследования и другие предложения, направленные на установку обоих).Я новичок в RoR, и особенно новичок в RVM, так что я бы с удовольствием объяснил и решил это безумие.

Спасибо, что прочитали!

1 Ответ

1 голос
/ 06 декабря 2010

Я думаю, что вы сошли с рельсов (ха-ха) прямо здесь:

sudo gem install rails --version=3.0.1

В документации RVM есть что сказать об этом:

НЕ используйте sudo ...

для работы с драгоценными камнями RVM. Когда вы делаете sudo вы запускаете команды как root, другой пользователь в другой оболочке и отсюда все настройки, которые есть у RVM сделано для вас игнорируется в то время как команда работает под sudo (такие вещи как GEM_HOME и т.д ...). Итак, чтобы повторить, как только вы 'sudo' вы бежите как пользователь корневой системы, который будет очистить вашу среду, а также любые файлы, которые он создает, не могут будет изменен вашим пользователем и будет В результате происходят странные вещи. (Вы начнете думать, что кто-то у тебя есть кукла вуду приложение ...)

...