2017-08-29 136 views
1

有些奇怪的事情正在发生,几个小时前所有的东西都能正常工作。Bundle安装不会从私人git回购安装gem

我有一个私人宝石作为项目的依赖项。我已经添加了专用的宝石混帐回购协议如下:

gem 'my-awesome-gem', '>=1.2.3', git: 'https://john:[email protected]/johndoe/my-awesome-gem' 

在做bundle install它表明:

... 
Using my-awesome-gem 1.2.3 from https://john:[email protected]/johndoe/my-awesome-gem (at [email protected]) 
Bundle complete! 5 Gemfile dependencies, 21 gems now installed. 
Use `bundle info [gemname]` to see where a bundled gem is installed. 

但是当我做gem list这种宝石不显示。此外,当我做pry -r my-awesome-gem或需要在项目中它返回:

! Unable to load application: LoadError: cannot load such file -- my-awesome-gem 
/Users/johndoe/.rbenv/versions/2.4.1/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- my-awesome-gem (LoadError) 
... 

我已经打绕了几个小时,但无法发现问题。我试过通过rbenv重新安装ruby。我通过rbenv使用Ruby 2.4.1。

我在做什么错?

回答

2

当使用Bundler时,您必须使用任何您使用的代码使Bundler参与。这意味着,无论是:

require 'bundler/setup' 
require 'my-awesome-gem' 

或者:

pry -r bundler/setup -r my-awesome-gem 

安装的宝石,它只是没有在你的$LOAD_PATH,直到你得到捆扎机在Gemfile加载并找到所有的依赖关系。