我已經使用 RVM 安裝了 Ruby 的最新穩定版本,但是,我無法將其設定為默認版本。運行which ruby總是回傳在我的系統上安裝了 MAMP 的 Ruby 的路徑,例如/Applications/MAMP/Library/bin/ruby
我嘗試了各種 rvm 命令,但沒有任何效果。我寧愿不必每次打開終端時都運行 rvm use 命令。
如果有區別,我正在使用 oh-my-zsh 和 iTerm2。
uj5u.com熱心網友回復:
正如 Dave Newton 所建議的,這聽起來像是一個PATH問題,但在 MAMP 的情況下,這也是一個alias問題。
如果您打開~/.profileand ~/.zprofile,在其中一個中您可能會看到以下幾行:
alias erb='/Applications/MAMP/Library/bin/erb'
alias gem='/Applications/MAMP/Library/bin/gem'
alias irb='/Applications/MAMP/Library/bin/irb'
alias rake='/Applications/MAMP/Library/bin/rake'
alias rdoc='/Applications/MAMP/Library/bin/rdoc'
alias ri='/Applications/MAMP/Library/bin/ri'
alias ruby='/Applications/MAMP/Library/bin/ruby'
alias rails='/Applications/MAMP/Library/bin/rails'
您需要將它們全部洗掉,保存檔案,然后退出并重新啟動 iTerm2。
如果您不知道如何打開和編輯點檔案,請閱讀我的指南,該指南解釋了在 Mac 上讀取和編輯點檔案的各種方法。
如果洗掉這些別名并不能解決問題,那么這是一個PATH問題。
為了讓您的 Mac 了解命令或其他可執行程式,必須告訴它在哪里尋找它。計算機在整個硬碟驅動器中搜索程式是沒有效率的。
相反,它會查找特定的位置串列,這些位置存盤在名為 的環境變數中PATH,用冒號分隔。您可以通過在終端中運行以下命令來查看此串列:
echo $PATH
當您安裝新程式(例如 Ruby)時,它們可能會安裝在PATH. 如果您不將這個新位置添加到 中PATH,計算機將不知道在那里尋找它,因此它認為它不存在。
同樣,如果新程式的位置確實已添加到 中,但您在 中的前面PATH有相同程式的另一個位置,那么它將始終使用它找到的第一個位置。PATH
大多數 Ruby 版本管理器使用腳本自動更新PATH. 該行應該在對PATH.
自從我使用 RVM 已經有一段時間了(我不再推薦它),但我認為它應該自動將這一行添加到你的 shell 檔案中:
source $HOME/.rvm/scripts/rvm
假設您正確安裝了 RVM,我會嘗試以下方法:
打開你的外殼檔案。
~/.zshrc如果您使用的是 oh-my-zsh ,應該是這樣。查找以 開頭的任何行,
export PATH=如果提到/Applications/MAMP/Library/bin/ruby,則從PATH. 還要確保任何PATH行都在 RVM 添加的行之前。退出并重新啟動 iTerm2
如果您在~/.zshrc或~/.zprofile或中看不到任何與 RVM 相關的行~/.profile,則說明 RVM 未正確安裝。
If you really want to use RVM, try uninstalling and reinstalling it. If all you care about is having a working Ruby environment, I would recommend chruby and ruby-install. You can install them by following my step-by-step guide to install Ruby on Mac.
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/434168.html
