我正在尝试从github安装一个像这样的gem:
gem 'omniauth', :git => "git://github.com/intridea/omniauth.git", :require => "omniauth"
问题是gem实际上并没有被加载。红宝石物体不存在。
所以,bundle show omniauth
告诉我:Users/felipe/.rvm/gems/ruby-1.9.2-p136/bundler/gems/omniauth-5972c94792cf
问题是gem正在安装到与常规gem不同的位置。我期望它是`/ Users / felipe / .rvm / gems / ruby-1.9.2-p136 / gems /``
有关如何解决这个问题的想法吗?
答案 0 :(得分:1)
尝试将捆绑线更改为。
gem 'omniauth', :git => "git://github.com/intridea/omniauth.git", :require => 'oa-oauth'
问题是你的:require属性指向要加载的错误文件。顺便说一下,当lib name和require都是相同的时候,它们并不总是与库名相同,只有当它们不同时才会指定它。
答案 1 :(得分:1)
我认为你错过了这两行:
require "rubygems"
require "bundler/setup"
正如您在Bundler的源代码中所看到的那样," bundler / setup"将把Bundler管理的宝石放在Ruby的加载路径中: https://github.com/carlhuda/bundler/blob/1-0-stable/lib/bundler/setup.rb#L22
希望这会有所帮助:)