Gem 安装在@global gemset 中在其他 gemset 中不可用

Gem installed in @global gemset is not available in other gemsets

我安装了 rvm,然后在@global gemset 中安装了 bropages

$ rvm install 2.2.3
$ rvm use ruby-2.2.3@global
$ gem install bropages

当我运行

$ gem list | grep bro
bropages (0.1.0)

我可以看到 bropages 已安装。但是当我移动到默认 gemset 时它不可用。

$ rvm use ruby-2.2.3@default
$ gem list | grep bro # Result is empty

我也试过official way.

$ rvm ruby-2.2.3@global do gem install bropages
Successfully installed bropages-0.1.0
Parsing documentation for bropages-0.1.0
Done installing documentation for bropages after 0 seconds
1 gem installed

但是也没用。

运行 bro 默认 gemset 中的命令给出此错误,

$ bro
/Users/andy/.rvm/rubies/ruby-2.2.3/lib/ruby/site_ruby/2.2.0/rubygems/dependency.rb:315:in `to_specs': Could not find 'bropages' (>= 0) among 7 total gem(s) (Gem::LoadError)
Checked in 'GEM_PATH=/Users/andy/.rvm/gems/ruby-2.2.3 /Users/andy/.rvm/gems/ruby-2.2.3@global:/Users/andy/.rvm/gems/ruby-2.2.3', execute `gem env` for more information
    from /Users/andy/.rvm/rubies/ruby-2.2.3/lib/ruby/site_ruby/2.2.0/rubygems/dependency.rb:324:in `to_spec'
    from /Users/andy/.rvm/rubies/ruby-2.2.3/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_gem.rb:64:in `gem'
    from /Users/andy/.rvm/gems/ruby-2.2.3@global/bin/bro:22:in `<main>'

我已经尝试过这些链接,但它们根本没有帮助。

  1. How to install gem across all gemsets when using RVM
  2. RVM - Not able to use gems from the @global gemset
  3. How do I use RVM and create globally available gems?

Ruby 2.2.3 是唯一安装的版本。我的 shell 是鱼。


来自

from the default gemset run: echo $GEM_HOME - $GEM_PATH from the global gemset run: gem list -d bro

输出如下,

$ rvm use ruby-2.2.3@default
Using /Users/andy/.rvm/gems/ruby-2.2.3
$ echo $GEM_HOME - $GEM_PATH
/Users/andy/.rvm/gems/ruby-2.2.3 - /Users/andy/.rvm/gems/ruby-2.2.3 /Users/andy/.rvm/gems/ruby-2.2.3@global

$ rvm use ruby-2.2.3@global
Using /Users/andy/.rvm/gems/ruby-2.2.3 with gemset global
$ gem list -d bro

*** LOCAL GEMS ***

bropages (0.1.0)
    Author: bropages.org
    Homepage: http://bropages.org
    Installed at: /Users/andy/.rvm/gems/ruby-2.2.3@global

    Bro

看起来你的 GEM_PATH 坏了,请 运行:

export GEM_PATH=/Users/andy/.rvm/gems/ruby-2.2.3:/Users/andy/.rvm/gems/ruby-2.2.3@global

再试一次:

bro