为什么bundler没有看到定制的gem源?

首先,事情是我在防火墙后面所以我不能使用https://rubygems.org/

$ bundle install rails bundle install requires at least 0 argument: "bundle install". git@gitdev $ bundle install Fetching gem metadata from https://rubygems.org/........... Fetching gem metadata from https://rubygems.org/.. Resolving dependencies... Using rake (10.0.4) Gem::RemoteFetcher::FetchError: SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A (https://s3.amazonaws.com/production.s3.rubygems.org/gems/i18n-0.6.1.gem) An error occurred while installing i18n (0.6.1), and Bundler cannot continue. Make sure that `gem install i18n -v '0.6.1'` succeeds before bundling. 

我认为bundler使用rubygems所以我看了rubygems来源:

 $ gem source *** CURRENT SOURCES *** http://rubygems.org/ 

在它之前是https://rubygems.org

此设置使用RVM 。 使用全局ruby安装时,通过更改gem源,我可以安装rails。 所有ssl连接都被防火墙阻止,尤其是github和aws。 非ssl链接适用于我的环境。

所以问题是为什么bundler者没有看到gems有非ssl’ed来源?

检查Gemfile,它可能有一行指定bundler使用的源:

 source 'https://rubygem.org' 

这是bundler使用的默认源。 您可以对其进行编辑以指向非HTTPS站点。