Выше не работает первый раз, работает второй раз.
Попробуйте установить версию ruby 2.0.0 для любых новых окон оболочки.
дела
$ rvm use 2.0.0 --default
дает
Warning! PATH is not properly set up, '/home/durrantm/.rvm/gems/ruby-1.9.3-p125/
bin' is not at first place,
usually this is caused by shell initialization files - check them for '
PATH=...' entries,
it might also help to re-add RVM to your dotfiles: 'rvm get stable --au
to-dotfiles',
to fix temporarily in this shell session run: 'rvm use ruby-1.9.3-p125'
.
Using /home/durrantm/.rvm/gems/ruby-2.0.0-p247
Затем делаем то же самое
$ rvm use 2.0.0 --default
теперь не выдает ошибок, т.е.
$ rvm use 2.0.0 --default
Using /home/durrantm/.rvm/gems/ruby-2.0.0-p247
durrantm.../durrantm$
но новые окна по-прежнему дают мне рубин 1.9.3, а не 2.0.0
В моем .bashrc
файле есть:
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
[[ -s "/home/durrantm/.rvm/scripts/rvm" ]] && . "/home/durrantm/.rvm/scripts/rvm"
В моем .bash_profile есть:
source ~/.profile
case $- in *i*) . ~/.bashrc;; esac
Попытка
rvm get stable
похоже, работает, но в конце большого количества зеленого вывода показывает:
Could not update RVM, get some help at #rvm IRC channel at freenode servers.
Новое окно терминала rvm list rubies
показывает это:
$ rvm list rubies
Warning! PATH is not properly set up, '/home/durrantm/.rvm/gems/ruby-1.9.3-p125/bin' is not at first place,
usually this is caused by shell initialization files - check them for 'PATH=...' entries,
it might also help to re-add RVM to your dotfiles: 'rvm get stable --auto-dotfiles',
to fix temporarily in this shell session run: 'rvm use ruby-1.9.3-p125'.
rvm rubies
=> ruby-1.9.3-p125 [ x86_64 ]
ruby-1.9.3-p194 [ x86_64 ]
* ruby-2.0.0-p247 [ x86_64 ]
# => - current
# =* - current && default
# * - default
~/.bashrc
,~/.bash_profile
, бегаrvm get stable --auto-dotfiles
, перепроверки~/.bashrc
,~/.bash_profile
и~/.profile
много раз ... этот ответ наконец установил ее! Ран:rvm reset
и избавился от предупреждений! (ИМХО ... RVM слишком привередлив к тому, чтобы быть первым на пути ... Если я поставлю что-то еще на своем пути, я знаю, что делаю)rvm reset
rvm reset
(сообщение будет отображаться в последний раз), теперь, когда я запускаю команду rvm, больше предупреждений PATH не будет.rvm help
возвращает довольно пугающий намек наrvm reset
: удалить все настройки по умолчанию и системные настройки 😄Ответ был такой:
** В НИЖНЕМ ** (последняя строка - важно!) моего файла .bashrc. У меня он был в моем файле .bash_profile (я использую Ubuntu), и он работал только частично, что приводило к сбивающим с толку ошибкам.
источник
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"
for Homebrew, вероятно, часто встречается в конфликте с rvm.rvm reset
это автоматически ...Возможно, это не лучший способ решить эту проблему, но я добавил эту строку в начало моего .zshrc (она будет работать и в .bashrc!)
источник
Я попробовал решение Майкла Дарранта, и оно не сработало для меня. но я побежал,
rvm get stable --auto-dotfiles
и он заработал как хотел.Надеюсь, поможет
источник
rvm default
внизу моегоconfig.fish
файла. командаrvm reset
не помогла при открытом окне терминала. Эта команда сработала. Мой результат: pastebin.com/1jUCSGnPbash
интерпретатор, и мне следовало также проверить эти файлы конфигурации ..rvm default
строка. Сейчас лучше ..Это не ответ на заданный вопрос, а на связанный с этим вопрос, который задавало большинство комментаторов / респондентов - зачем вам помещать строку rvm в конец rc файла оболочки?
Ответ прост.
$PATH
, а.bashrc
(или эквивалент для вашей оболочки по умолчанию) читается и интерпретируется построчно сверху вниз.Итак, представьте себе следующий сценарий:
Ясно, что если что-то присутствует в файле инициализации оболочки после строки RVM и вносит какие-либо изменения в $ PATH, а точнее, если он
$PATH
добавляет каталоги в начало, то эти изменения вытолкнут каталоги, добавленные rvm, с их первой позиции. RVM при вызове обнаружит, что его рубиновые двоичные каталоги не находятся в самом начале$PATH
и BAM! вы получите предупреждение :).Надеюсь, это проясняет ситуацию.
источник
Просто добавляю свой опыт: если пользуетесь
.bash_profile
, проверьте,.bashrc
не мешает ли . Убийство.bashrc
в пользу единственной конфигурации Bash.bash_profile
в этом случае работает.источник
.bashrc
выполняется для каждой вложенной интерактивной оболочки;.bash_profile
выполняется только в первой введенной оболочке bash, то есть в оболочке входа в систему. Переменные обычно должны быть установлены.bash_profile
, тогда как функции, псевдонимы и т. Д. (Вещи, которые не передаются с нормальной унаследованной средой) должны быть установлены.bashrc
.У меня есть дополнительный вопрос к этому (хотел бы я просто добавить комментарий, но у меня недостаточно кредитов). У меня была такая же проблема - и когда я последовал за сценарием rvm, который предлагалось использовать
--auto-dotfiles
, у меня возникли проблемы, поскольку каким-то образом сценарий оболочки удалил мой файл .bashrc_profile .Во всяком случае, в конце концов я пришел к тому же ответу, указанному выше, поместив эту строку в конец файла .bashrc .
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
Вы случайно не узнали, почему это работает именно так, а не со строкой в середине файла .bashrc? Есть ли у вас некоторая ясность в том, как Unix загружает переменную среды, которая заставляет RVM работать в одном экземпляре, а не в другом?
источник
Я столкнулся с той же проблемой. Я обнаружил, что в файле bashrc
несколько записей для rvm. Я прокомментировал одну запись, и она работает нормально.
источник
Я вычистил все, что было .rvm, из моей строки PATH = в моем .zshrc
Это устранило проблему для меня, тогда как другие ответы здесь (поиск сценария rvm или стабилизация с помощью автоматических файлов точек) не работали.
источник
Я нашел эту команду очень полезной. Это решает мой случай. Поэтому, если у кого-то возникла такая же проблема, попробуйте:
rvm get stable --auto-dotfiles
источник
rvm install ruby-head
Исправлена проблема для меня - немного времени, но свое дело. Не уверен, что это внесло какие-либо непроявленные обновления в мои файлы bash.источник
В итоге я удалил
~/.profile
,~/.bashrc
и~/.zshrc
.В основном я держал только
~/.bash_profile
свой Mac. И это работает.Думаю, в моем случае это:
в этих файлах, и эти повторяющиеся настройки запутали
rvm
источник
отказ
Потому что я в основном разрабатываю с использованием python, поэтому я не уверен, что это обходное решение даст вам правильный ruby env или просто изменит путь и избавится от предупреждения
Задний план
В моем случае
rvm
сначала установил , а потом ужеpyenv
. Конфиг для них обоих изменится$PATH
. Из предупреждения кажется, что rvm всегда хочет быть первым на пути$ echo $PATH
$HOME/.rvm/gems/ruby-2.6.3/bin: ......
Но если вы добавите
eval "$(pyenv init -)"
как требуетсяpyenv
, он изменит ваш$PATH
на$ echo $PATH
$HOME/.pyenv/shims:$HOME/.rvm/gems/ruby-2.6.3/bin: ......
Мое обходное решение
$ rvm use system
# Вернуться на системный рубин$ rvm use ruby-2.6.3
# Переключитесь на версию, которая вам нужнаrvm
изменит путь на то, что ему нравится, тогда вы больше не увидите раздражающее предупреждение.источник
Это сработало после того, как закомментировали две верхние повторяющиеся строки и добавили их внизу. Не забудьте перезапустить терминал, чтобы он заработал.
источник
Можете добавить
в ваш
~/.rvmrc
файл. Вот что теперь предлагает предупреждающее сообщение.источник
PATH
звуках для меня навязчиво и, в лучшем случае, защищает , я решил опубликовать этот ответ. У меня будет время, чтобы переосмыслить свой ответ и улучшить его на основе ваших комментариев :)Я УСТРАЛ ЭТУ ПРОБЛЕМУ. ПОПРОБУЙТЕ ИСПОЛЬЗОВАТЬ КОМАНДУ, КАК ЭТА:
ДОБАВИТЬ -p353 или другую информацию о вашей версии в конец строки
источник