安装后没有显示Ruby json gem

时间:2013-01-12 00:09:15

标签: ruby json rubygems

所以我使用:

安装了json gem
sudo gem install json

所有内容似乎都安装正确,但是当我致电gem list时,我得到了这个:

bundler (1.2.1)
hpricot (0.8.6)
i18n (0.6.1)
mail (2.4.4)
mime-types (1.19)
polyglot (0.3.3)
rack (1.4.1)
rack-protection (1.2.0)
rake (10.0.0)
rubygems-bundler (1.1.0)
rvm (1.11.3.5)
sinatra (1.3.3)
tilt (1.3.3)
treetop (1.4.12)

正如您所看到的那样,没有json宝石,它正在制作它,以便我可以运行我的Ruby程序。任何帮助都会很棒!

2 个答案:

答案 0 :(得分:3)

您使用sudo安装了JSON,但似乎您正在运行RVM。在RVM下,使用sudo安装gems,a big NO-NO会导致此类问题。

sudo gem install json将它安装在系统中预先存在的JSON上,而不是安装在RVM控制的Ruby中。

再做一次,但不要使用sudo,看看会发生什么。

并且,除非您了解sudo gem install json或其他某些宝石发生的情况,否则请勿使用sudo gem installsudo gem remove

编辑:

根据RVM网站上的Troubleshooting page,以下是如何删除系统范围的安装:

#!/bin/bash
/usr/bin/sudo rm -rf $HOME/.rvm $HOME/.rvmrc /etc/rvmrc /etc/profile.d/rvm.sh /usr/local/rvm /usr/local/bin/rvm
/usr/bin/sudo /usr/sbin/groupdel rvm
/bin/echo "RVM is removed. Please check all .bashrc|.bash_profile|.profile|.zshrc for RVM source lines and delete
or comment out if this was a Per-User installation."

答案 1 :(得分:0)

如果您需要sudo权限才能安装gem,请使用:rvmsudo

在这种情况下,它解决了我的问题,而无需重新安装所有内容。