Bundler 找不到我可以使用 gem install 安装的 gem

Bundler can't find a gem that I can install using gem install

我正在并排开发两个 gem,一个包含一些纯粹的 ruby 功能,另一个带有 Rails.

的接口

Railsgem(卢旺达-rails)依赖于纯Rubygem(卢旺达)与spec.add_runtime_dependency "rwanda" "~> 0.6.0"中.gem规格。但是,出于某种原因,捆绑程序无法找到这个新版本——尽管我可以使用 gem install:

安装它
15:40 slack@kevin:~/rails/rwanda-rails[master]$ gem install rwanda
Successfully installed rwanda-0.6.0
Parsing documentation for rwanda-0.6.0
Done installing documentation for rwanda after 0 seconds
1 gem installed
15:48 slack@kevin:~/rails/rwanda-rails[master]$ bundle install
Fetching gem metadata from https://rubygems.org/.........
Fetching version metadata from https://rubygems.org/..
Resolving dependencies...
Bundler could not find compatible versions for gem "rwanda~> 0.6.0":
  In Gemfile:
    rwanda-rails (>= 0) ruby depends on
      rwanda~> 0.6.0 (>= 0) ruby
Could not find gem 'rwanda~> 0.6.0 (>= 0) ruby', which is required by gem 'rwanda-rails (>= 0) ruby', in any of the sources.

确认 rwanda 已安装:

15:50 slack@kevin:~/rails/rwanda-rails[master]$ gem list
*** LOCAL GEMS ***

[...]
rwanda (0.6.0)

Bundler 配置为在 ~/vendor/bundle/ 中安装 gems:

15:50 slack@kevin:~/rails/rwanda-rails[master]$ ls -1 ~/vendor/bundle/gems/
[...lots of gems...]
rwanda-0.4.0
rwanda-0.5.3
rwanda-0.6.0

我想我对捆绑器在哪里安装它的 gem 以及为什么它找不到似乎可用的 gem 感到困惑。

我正在使用 ruby 2.2.1,通过 gem 目录中的 .ruby 版本设置。 $GEM_PATH 和 $GEM_HOME 没有设置(应该设置吗?rbenv 会处理这个吗?)。

我还安装并删除了 rbenv-bundler(在找到 rbenv 开发人员的警告后),我担心它可能留下了一些干扰?

我为 rbenv 安装了三个插件:binstubs、gem-rehash 和 ruby-build。

我也试过 rbenv rehashbundle install --binstubsbundle update(失败并显示与 bundle install.

相同的消息

您似乎在 gem 名称和 gem 规范中的版本之间缺少 ,

spec.add_runtime_dependency("rwanda", "~> 0.6.0")