2016-12-29 3 views
0

Я использую Ruby 2.3 (я думаю) на Mac Sierra. Как сделать/usr/bin/ruby ​​точку в правильной версии Ruby? Я переустановил версию 2.3.0 (тот, который я хочу использовать) через РВМ и установить его по умолчанию, но до сих пор не любовь ...Как я могу/usr/bin/ruby ​​указать правильную версию Ruby на моем Mac?

localhost:~ davea$ rvm use 2.3.0 --default 
Using /Users/davea/.rvm/gems/ruby-2.3.0 
localhost:~ davea$ /usr/bin/ruby --version 
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16] 

Причина мне нужна эта версия является то, что его использовали для Rails 5 и I необходимо сообщить пассажиру путь, где установлен Ruby.

+0

Хорошо. Скажите пассажиру '/ Пользователи/davea/.rvm/gems/ruby-2.3.0'. –

ответ

0

В этой строке:

localhost:~ davea$ /usr/bin/ruby --version 

Вы рассказываете свою оболочку для перехода в каталог /usr/bin и вывести версию команды рубина, который находится там. Но rvm не использует этот каталог для рубиновых версий, которыми он управляет.

Если вы хотите узнать, какую версию рубина, что РВМ в настоящее время используется, выполните команду:

localhost:~ davea$ ruby --version 

Резервное копирование на минуту, когда вы выдаете любую команду в командной строке, команда выглядела в каталогах, указанных в переменной среды $ PATH - в том порядке, в котором они указаны, до тех пор, пока не будет найдена команда. Вы можете изучить эти каталоги, делая это:

localhost:~ davea$ echo $PATH 

РВМ работает путем добавления каталогов и удаляя каталоги из передней части переменной окружения $ PATH, так что команда рубин первым нашел в каталоге РВМ.

Чтобы увидеть, где рубин, что РВМ использует расположен, вы можете сделать это:

localhost:~ davea$ which ruby 
/Users/7stud/.rvm/rubies/ruby-2.3.0/bin/ruby 

А если использовать RVM для переключения версии Ruby:

~$ rvm list 

rvm rubies 

    ruby-1.9.3-p194 [ x86_64 ] 
    ruby-1.9.3-p551 [ x86_64 ] 
    ruby-2.2.1 [ x86_64 ] 
=* ruby-2.3.0 [ x86_64 ] 

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

~$ rvm use 2.2.1 
Using /Users/7stud/.rvm/gems/ruby-2.2.1 

~$ ruby --version 
ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-darwin14] 

~$ which ruby 
/Users/7stud/.rvm/rubies/ruby-2.2.1/bin/ruby 

Если по каким-то причинам /usr/bin/ruby жестко закодирован в Пассажир, тогда вы можете создать ссылку от /usr/bin/ruby на любую рубиновую версию, установленную на вашем компьютере. Во-первых, вы можете сохранить текущую команду рубиновый:

/usr/bin$ sudo mv ./ruby ./ruby-orig 
/usr/bin$ sudo ln -s /Users/7stud/.rvm/rubies/ruby-2.3.0/bin/ruby ./ruby 
/usr/bin$ ls -al ./ruby 
lrwxr-xr-x 1 root wheel 44 Dec 29 17:04 ./ruby -> /Users/7stud/.rvm/rubies/ruby-2.3.0/bin/ruby 

Также см: https://www.phusionpassenger.com/library/indepth/ruby/multiple_rubies.html

И: https://www.phusionpassenger.com/library/config/nginx/reference/#passenger_ruby

Это последний, кажется, показывают, что вы можете использовать путь РВМ.

+0

Пассажир не принимает «/Users/7stud/.rvm/rubies/ruby-2.3.0/bin/ruby» как приемлемый путь для ruby, поэтому я пытаюсь обновить/usr/bin/ruby. Итак, мой quesiton остается, как мне это сделать? – Dave

+0

@Dave, см. Дополнение к нижней части моего ответа. – 7stud

+1

@Dave, вы буквально использовали путь, который вы отправили в своем комментарии, потому что сомнительно, что у вас есть пользователь с именем 7stud (мое имя пользователя) на вашем компьютере. – 7stud

Смежные вопросы