我安装了一个从gem运行此命令的Ruby gem:
gem install pushmeup
从root执行脚本时,gem运行良好。当我尝试从非root用户执行脚本时,我看到有关未找到此类gem的错误:
/usr/local/rvm/rubies/ruby-1.9.3-p551/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- pushmeup (LoadError)
from /usr/local/rvm/rubies/ruby-1.9.3-p551/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:54:in `require'
from pushAPNS.rb:2:in `<main>'
答案 0 :(得分:1)
编辑:
RVM为您提供分区的独立ruby设置。这意味着 红宝石,宝石和红宝石都是独立的,独立的 - 来自 系统,并相互之间。
============
切勿将sudo
与rvm一起使用。
输入rvm gemset list
输入rvm gemset use global
输入gem install some_gem
全球宝石集中的宝石将在所有其他宝石集中提供。如果要为特定项目创建gemset,请执行以下操作:
rvm gemset create proj1_gems
rvm gemset list
rvm gemset use proj1_gems
要删除宝石集:
rvm gemset delete proj1_gems
rvm gemset list
每个版本的ruby都有自己的gemsets。您可以使用以下命令切换到特定ruby版本和该版本的gemsets之一:
rvm use 2.0.0@proj1_gems
但一般来说,我这样做:
rvm use 2.0.0
rvm gemset list
rvm gemset use some_gemset_name_in_the_list