我想在我的Mac上试用ZSH shell,但我也做了很多Ruby和Rails开发,所以我也使用了RVM。问题是我似乎无法让RVM在ZSH中工作,并且它在默认的Bash shell中工作正常:
> zsh
> rvm 1.9.2
> ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
> which ruby
/usr/bin/ruby
我可以肯定地确认已安装RVM,以及RVM下的ruby 1.9.2;我一直在Bash中使用它。在ZSH中运行rvm list
显示了这一点,有趣的是:
rvm rubies
ruby-1.8.7-p302 [ x86_64 ]
=> ruby-1.9.2-p0 [ x86_64 ]
我的iMac和MacBook Pro都发生了这种情况。我在两者上使用OS X 10.6.6,在iMac上使用ZSH 4.3.9(笔记本电脑上的4.3.10)。没什么好像哦-my-zsh。
我尝试查看RVM website上的文档,但没有任何帮助。
答案 0 :(得分:247)
你的〜/ .zshrc ?
中有这一行吗?[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
答案 1 :(得分:21)
使用最新的RVM,以下行:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
不再需要,它不应该在您的~/.zshrc
。
文档已在RVM documentation with Zsh中更新:
确保在iTerm2首选项中设置:登录shell 选项(不要使用命令选项)。这是RVM工作所必需的。
如果你仍然在获取rvm不是iTerm上的功能错误,请尝试:
rvm get stable --auto-dotfiles
答案 2 :(得分:5)
请注意2014年11月
rvm安装说明警告.zshrc在设置PATH时不包含$ PATH,因此替换PATH的内容而不考虑PATH中已存在的内容。
为了解决这个问题,我现在追加 PATH,在设置.rvm/bin
时开始$PATH
然后 prepend PATH
第二行:
export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting
export PATH=$PATH:"/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin:/usr/local/mysql/bin:/opt/local/bin"
答案 3 :(得分:1)
我遇到了同样的问题,我在“ruby on rails”安装后解决了这个问题:
echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.zshrc
和
source ~/.zshrc
答案 4 :(得分:0)
我使用zsh,并且[[-s“$ HOME / .rvm / scripts / rvm”]]&& 。我的.zshrc文件中有“$ HOME / .rvm / scripts / rvm”,但是收到了解析错误:404。
当我将该行移动到.profile文件时,错误停止了。它似乎与我的.zshrc文件中的某些内容相冲突,并且可能在.profile中运行它避免了.zshrc文件不兼容。我无法