Я получаю ошибку "RVM is not a function" в Mac OS X, и никакие опубликованные решения не работают - программирование
Подтвердить что ты не робот

Я получаю ошибку "RVM is not a function" в Mac OS X, и никакие опубликованные решения не работают

Я нахожусь в Mac OS x 10.8.2 ( "Горный лев" ), и я успешно установил RVM 1.17.8 и его зависимости. Я могу использовать его для установки версий Ruby с помощью rvm install 1.9.2, но я не могу выполнить rvm use <version> без получения этой ошибки:

RVM is not a function, selecting rubies with 'rvm use ...' will not work.

You need to change your terminal emulator preferences to allow login shell.
Sometimes it is required to use `/bin/bash --login` as the command.
Please visit https://rvm.io/integration/gnome-terminal/ for a example.

У меня есть следующее в ~/.bash_profile, которое я установил для запуска, используя source ~/.bash_profile, всякий раз, когда запускается окно терминала:

export SVN_EDITOR=vim
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
[ -r ~/.bashrc ] && source ~/.bashrc

Я пробовал запустить source ~/.rvm/scripts/rvm, который запускается без возврата ошибки, но я все равно получаю ошибку "RVM is not a function", когда я пытаюсь использовать RVM для установки версии Ruby в сеансе терминала.

Я также попытался удалить и переустановить RVM с помощью rvm implode. У меня закончились идеи, и я не могу найти больше решений в Интернете. Помощь?

4b9b3361

Ответ 1

Решение оказалось на странице RVM Справка и поддержка в разделе ".bash_profile, не загружаемом в OSX". Похоже, что проблема заключалась в том, что у меня был установлен мой терминал с "оболочкой входа по умолчанию", и когда я изменил ее, вместо этого откройте команду "/usr/ bash" в "Настройки/Настройка", "источник ~/. rvm/scripts/rvm", и теперь rvm распознается как функция.

Ответ 2

Убедитесь, что файлы инициализации оболочки настроены правильно:

rvm get head --auto-dotfiles

Затем перейдите к настройкам эмулятора терминала и включите оболочку входа, иногда требуется использовать /bin/bash --login. Также убедитесь, что вы полностью закрываете терминал и открываете его после изменения настройки.

Ответ 3

найдите .profile, если существует, удалите его! loof для .zshrc, если существует, удалите его! Теперь, используйте vi для редактирования вашего .bash_profile, добавьте эту строку

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

Теперь закройте все службы консоли и откройте снова, выполните тест, используя $ rvm gemset use global

Работайте хорошо для меня!