我曾经运行Mac OS X Lion附带的默认bash
终端,但最近使用ZSH
插件升级到Oh My Zsh
。
从那时起,我在使用Ruby gems时遇到了一个奇怪的错误。
本质上,即使安装了宝石,所有宝石都会返回“未找到命令”错误。
以下是我的ZSH终端的一个例子:
rvm list
显示我的RVM ruby是我想要的默认值。rvm gem list
显示我的宝石已安装,请注意sass
宝石。sass --watch
命令会返回zsh: command not found: sass
。以防万一,我的$PATH
变量输出。
Jannis-Mac-Pro: /Volumes/Storage2/Sites/git/mathewhawley.com/static
→ which ruby
/Users/jannis/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
Jannis-Mac-Pro: /Volumes/Storage2/Sites/git/mathewhawley.com/static
→ rvm list
rvm rubies
=* ruby-1.9.2-p290 [ x86_64 ]
# => - current
# =* - current && default
# * - default
Jannis-Mac-Pro: /Volumes/Storage2/Sites/git/mathewhawley.com/static
→ rvm gem list
Please note that `rvm gem ...` is only an alias to `rvm do gem ...`,
it might work different as in earlier versions of RVM and will be shortly removed!
Also note that you do not have to prefix every command with `rvm`, they should just work by itself.
`rvm do gem list` is deprecated, use `rvm all do gem list` or `rvm 1.9.2 do gem list` instead.
*** LOCAL GEMS ***
addressable (2.2.7, 2.2.6)
chunky_png (1.2.5)
compass (0.11.7, 0.11.6, 0.11.5)
css_parser (1.2.6)
fssm (0.2.8.1, 0.2.7)
grid-coordinates (1.2.0)
haml (3.1.4, 3.1.3)
htmlentities (4.3.1)
json (1.6.5)
nokogiri (1.5.0)
oily_png (1.0.2)
premailer (1.7.3)
rake (0.9.2.2, 0.9.2)
rb-fsevent (0.9.0, 0.4.3.1)
rdoc (3.12)
rubygems-update (1.8.17, 1.8.15, 1.8.13, 1.8.11)
sass (3.1.15, 3.1.12, 3.1.10)
stitch (0.1.3.2)
Jannis-Mac-Pro: /Volumes/Storage2/Sites/git/mathewhawley.com/static
→ sass --style compressed --watch scss:css
zsh: correct 'sass' to 'case' [nyae]? n
zsh: command not found: sass
Jannis-Mac-Pro: /Volumes/Storage2/Sites/git/mathewhawley.com/static
→ echo $PATH
/Users/jannis/.rvm/gems/ruby-1.9.2-p290@global/bin:/Users/jannis/.rvm/rubies/ruby-1.9.2-p290/bin:/Users/jannis/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/git/bin
如果有人知道为什么一切似乎都在运行并被安装,但实际上并没有找到并运行gem命令,我将非常感谢你的帮助。
答案 0 :(得分:15)
检查你的rc文件
在其中一个PATH
中最有可能在RVM被采购后重置
也有一些oh-my-zsh插件可能会破坏它们,尝试禁用它们并逐个启用。
答案 1 :(得分:3)
在我的情况下,这与ZSH complains about RVM __rvm_cleanse_variables: function definition file not found有关,并按照说明解决了它。
答案 2 :(得分:1)
按照rvm安装文档,我在〜/ .zshrc中添加2行
#add $PATH in path
export PATH="$PATH: /opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/Users/m/Downloads/temp/bin:/Applications/apache-ant-1.9.6/bin:/Users/m/Library/Android/sdk/platform-tools:/Users/m/Library/Android/sdk/tools:/Users/m/Desktop/python/vlfeat/bin/maci64:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Users/m/bin/FDK/Tools/osx"
source $ZSH/oh-my-zsh.sh
#rvm puby need this, get this file
source ~/.profile