我正在尝试遵循Hartl Rails教程,并且遇到了捆绑宝石的问题。
使用命令'bundle install'或'bundle update'时,我得到以下输出:
获取源索引 获取规格
我搜索了这个输出,但没有在网上找到很多相关问题。
也许我有另一个正在打断捆绑器的宝石?此时我对rails几乎没有经验。
source 'https://rubygems.org'
gem 'rails', '3.2.12'
group :development do
gem 'sqlite3', '1.3.5'
end
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails', '3.2.5'
gem 'coffee-rails', '3.2.2'
gem 'uglifier', '1.2.3'
end
gem 'jquery-rails', '2.0.2'
我的解决方案分为两部分:我将https更改为http,这暂时解决了问题。第二个问题是我认为我安装了ruby 2.0.0,尽管我使用的是全新安装的ruby 1.9.3。所以我重新安装了ruby 2.0.0,我可以使用https的捆绑安装。
答案 0 :(得分:21)
我有同样的问题。我发现唯一可行的解决方案是在Gemfile中强制使用http而不是https:
source 'http://rubygems.org'
答案 1 :(得分:9)
如果是在Windows中,您可以尝试以下操作:
set HTTP_PROXY= <your proxy address without http://>
set HTTPS_PROXY=%HTTP_PROXY%
例如:
HTTP_PROXY=mycompany.myproxy.com:8080
HTTPS_PROXY=%HTTP_PROXY%
为我工作
答案 2 :(得分:8)
只要以上条件都不满足下一个强悍的浏览器,我想我会在这里花了4个小时进行搜索的各种变体,最终使我落在这里,我才发现这是罪魁祸首,找到this specific thread on help.rubygems.org之后。解?此(Fedora,Linux):
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1
设置一个Shell脚本来打开和关闭IPV6,这样我就可以在没有它的情况下运行命令,现在一切都在运行。
答案 3 :(得分:2)
如果您落后于代理服务器,导致此类问题的另一个原因就是这个问题。我在这里描述解决方案,也许它对其他人有用。 :)
如果您不知道登录/传递您的代理,并且遇到此问题,您可以首先通过命令检查是否需要(重新)安装任何内容:
C:\...> bundle check
Resolving dependencies...
The Gemfile's dependencies are satisfied
如果您在上面得到其他响应,您可以在正确版本here (rubygems.org)中找到正确的宝石,然后通过命令安装它(从下载宝石的目录):
gem install <gem-name> --locally
答案 4 :(得分:2)
我在OS X 10.8.5上使用ruby-2.0.0-p247
遇到了同样的问题。
确保Gemfile
中的第一行使用https://
source 'https://rubygems.org'
我重新安装了那个版本的ruby。
rvm reinstall ruby-2.0.0
Ruby已升级ruby-2.0.0-p598
(版本取决于最新补丁)。
bundle
然后工作没有错误,尽管重新安装了所有宝石。
答案 5 :(得分:2)
这也可能是暂时的网络问题。 尝试使用命令重新启动网络服务
service network restart
如果是* nix机器。
答案 6 :(得分:1)
我在Cloud 9中工作时遇到了这个问题。在尝试了几个“捆绑安装”并向c9支持发送电子邮件(没有回复)后,我能够通过杀死所有进程并进行硬重启来使其工作。 IDE。
通过直接单击右侧顶部显示CPU,内存,磁盘的小条形图来执行此操作。然后单击进程列表,全部选中它们,并强制终止。然后退出进程列表。再次单击条形图,这次单击“重新启动”。
在此之后,我能够毫无问题地运行捆绑包。
答案 7 :(得分:1)
有时它会因您使用的代理而发生。 我试图通过使用没有代理的连接解决这个问题,并且所有工作都完美无缺 然后尝试:
bundle update
然后去
bundle install
答案 8 :(得分:1)
答案 9 :(得分:0)
为代理添加变量工作正常。
此外,如果您使用像我这样的Bitnami redmine,您可以将其添加到setenv.bat中,然后当您使用Bitnami Redmine快捷方式启动命令行时,它将自动添加到您的环境中。 你可以在Bitnami安装文件夹下找到它。
答案 10 :(得分:0)
如果您使用的是Cloud9,只需重新启动(命令R)并再试一次
答案 11 :(得分:0)
运行后将源表单https更改为http
+--------+-------+-----+-------+-----+------------+-----+---------+
| Col_1 | Col_2 | ... | Col_5 | ... | Col_10 | ... | Col_100 |
+--------+-------+-----+-------+-----+------------+-----+---------+
| 12 | Bob | ... | 18 | ... | 08/06/1992 | ... | 12.6 |
| 6 | Mike | ... | 37 | ... | NULL | ... | 18.0 |
| 18 | Sally | ... | 6 | ... | NULL | ... | 16.3 |
| : | : | : | : | : | : | : | : |
| 94 | Eli | ... | 37 | ... | 01/22/2003 | ... | 19 |
+--------+-------+-----+-------+-----+------------+-----+---------+
sudo bundle update
答案 12 :(得分:0)
我的只是一个简单的网络问题,只需重启PC /路由器
答案 13 :(得分:-1)
对我来说,重新启动计算机即可。我已经重新安装了ruby,更新了bundler,删除了's'https://,但是没有一个起作用!