我的宝石文件包含:
gem "breadcrumb", :git => "git@github.com:mjacobus/Breadcrumb.git"
gem "simple_menu", :git => "git@github.com:mjacobus/simple_menu.git"
第一个gem按预期安装,但第二个gem失败。
Updating git@github.com:mjacobus/simple_menu.git
Fetching gem metadata from https://rubygems.org/........
Could not find gem 'simple_menu (>= 0) ruby' in git@github.com:mjacobus/simple_menu.git (at master).
Source does not contain any versions of 'simple_menu (>= 0) ruby'
类似帖子指出缺少.gemspec文件,但此文件存在。 https://github.com/mjacobus/simple_menu/blob/master/simple_menu.gemspec
我可能正在做一些别人的眼睛能够看到的蠢事。
我将repo克隆到vendor / plugins文件夹并更改了我的Gemfile
gem "simple_menu", :path => "vendor/plugins/simple_menu"
捆绑安装现在出现错误:
bundle install
Fetching gem metadata from https://rubygems.org/.......
Could not find gem 'simple_menu (>= 0) ruby' in source at vendor/plugins/simple_menu.
Source does not contain any versions of 'simple_menu (>= 0) ruby'
我知道这是一个愚蠢的错误。宝石名称不正确。
https://github.com/mjacobus/simple_menu/commit/1afca04b08a084dafb9bdf6e595a2bb9a7b7a55f
答案 0 :(得分:24)
正如马塞洛所说,我得到了同样的错误,这是一个愚蠢的事情:
gemspec文件
Gem::Specification.new do |s|
s.name = 'niche_wir_theme'
....
宝石文件(包括)
gem 'niche-wir-theme', :git =>
....
正如你在我的gemspec中看到的那样,我使用(“_”)下划线命名,在我的gemfile上,我试图用“ - ”(破折号)调用它......
(掌上)所以只需要处理名称表示法,你在gemspec文件中声明的那个与你在另一个项目的gem文件中用于调用的那个可能不同
答案 1 :(得分:10)
我遇到了与Rails 4.2类似的问题。在我的情况下,这是另一个愚蠢的错误。看来如果你在gemspec文件的注释中留下“TODO”或“FIXME”,它将拒绝该gem并抛出相同的错误。请务必阅读bundle命令的输出。
答案 2 :(得分:5)
gemspec文件名为 simplemenu.gemspec ,而不是 simple_menu.gemspec 。