虽然安装Ruby gem我遇到以下错误:
ERROR: Could not find a valid gem 'bundler' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - Errno::ETIMEDOUT:
Failed to open TCP connection to api.rubygems.org:443 (A connection attempt fai
led because the connected party did not properly respond after a period of time,
or established connection failed because connected host has failed to respond.
- connect(2) for "api.rubygems.org" port 443) (https://api.rubygems.org/specs.4.
8.gz)
Gems我试图安装:
Nokogiri
Mechanize
Bundler
(显然)所有产生相同的错误,我猜它是所有的宝石,而不仅仅是捆绑。
我以前从未见过这个,所以我不知道该怎么做,有人能告诉我发生了什么事吗?值得一提的是,我在一个安全的网络上。
更新:
我试图在防火墙中初始化一条新规则,允许我通过端口443(gem install
运行的端口)使用TCP连接;但是我仍然收到错误
更新:
我做了一些研究,并试图通过this资源使用gem update --system
进行更新。但是它仍然会抛出相同的错误,并且不允许我更新
答案 0 :(得分:3)
我最近遇到了同样的问题,这是代理问题。
如果你在公司网络(工作,大学,宿舍等),你可能也是。确定代理服务器信息(请参阅网络设置)并尝试将代理信息添加到gem install
命令。
根据您的宝石版本,其中一个应该有效:
gem install --http-proxy http://[user]:[password]@[server]:[port]
gem install -p http://[user]:[password]@[server]:[port]
如果这是您的主要网络访问权限,那么您可以将其设置为默认使用。在您的主目录(Windows或Linux中的用户文件夹)中创建.gemrc
文件,并在那里设置代理设置:
http_proxy: http://[user]:[password]@[server]:[port]
答案 1 :(得分:1)
我不完全确定发生了什么。但是我能够进入另一个网络并下载宝石。
没有代理,没有VPN设置,但是有一个默认脚本,所以我猜这与它有关。
所以决议是我进入了一个不同的网络并成功安装了我需要的东西
答案 2 :(得分:-1)
尝试将它们安装在非代理环境中,对我有用。