【问题标题】:JSON gem install error: unable to download dataJSON gem 安装错误:无法下载数据
【发布时间】:2014-12-07 19:23:17
【问题描述】:

我正在使用:

  • Windows 7 SP1
  • Ruby 2.0.0p598 (2014-11-13) [i386-mingw32]
  • Gem 版本 2.0.14
  • DevKit:Ruby 2.0.0:mingw64-32-4.7.2

在 Ruby 环境中测试并运行 JSON gem 安装时,我收到此错误:

C:\RoW\Ruby200\devkit>gem install json --platform=ruby

ERROR:  Could not find a valid gem 'json' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3
read server certificate B: certificate verify failed (https://rubygems.org/latest_specs.4.8.gz)

【问题讨论】:

标签: ruby json windows windows-7 gem


【解决方案1】:

SSL 错误是由于 ruby​​gems.org 中的更改造成的。您可以在这里查看解决方案:https://gist.github.com/luislavena/f064211759ee0f806c88

您需要更改您的 SSL 证书

编辑:

手动解决 SSL 问题

如果您已阅读以上描述问题的详细信息,谢谢。

现在,您想手动解决安装问题。

步骤很简单:

Step 1: Obtain the new trust certificate
Step 2: Locate RubyGems certificate directory in your installation
Step 3: Copy new trust certificate
Step 4: Profit

第 1 步:获取新的信任证书

如果您阅读了前面的部分,您就会知道这意味着什么(如果您没有阅读过,您会感到羞耻)。

我们需要下载AddTrustExternalCARoot-2048.pem

使用上面的链接并将此文件放置/保存到您以后可以轻松找到的位置(例如您的桌面)。

重要提示:文件必须以 .pem 作为扩展名。 Chrome 等浏览器会尝试将其保存为纯文本文件。确保在下载后将文件名更改为 .pem。 第 2 步:在您的安装中找到 RubyGems 证书目录

为了让我们复制这个文件,我们需要知道把它放在哪里。

根据您安装 Ruby 的位置,目录会有所不同。

以Ruby 2.1.5的默认安装为例,放在C:\Ruby21

打开命令提示符并输入:

C:\>gem which rubygems
C:/Ruby21/lib/ruby/2.1.0/rubygems.rb

现在,让我们找到那个目录。在同一窗口中,输入文件扩展名之前的路径部分,但使用反斜杠:

C:\>start C:\Ruby21\lib\ruby\2.1.0\rubygems

这将在我们指定的目录中打开一个资源管理器窗口。

第 3 步:复制新的信任证书

现在,找到 ssl_certs 目录,把我们上一步得到的 .pem 文件复制进去。

它将与 GeoTrustGlobalCA.pem 等其他文件一起列出。

第 4 步:利润

实际上没有第 4 步。您现在应该可以毫无问题地安装 Ruby gem。

【讨论】:

    【解决方案2】:

    如果您的 C:drive 中有一个 [Ruby193 install folder with executables],那么您应该切换到该目录并在 bin 文件夹中执行相同的命令...

    User@Computer-Name /c/Ruby193/bin ./gem install json --platform=ruby

    $ ./gem install json --platform=ruby 获取:json-1.8.1.gem (100%) 构建原生扩展。这可能需要一段时间... 错误:安装 json 时出错: 错误:无法构建 gem 原生扩展。

        c:/Ruby193/bin/ruby.exe extconf.rb
    

    创建 Makefile

    制作 生成生成器-i386-mingw32.def 编译生成器.c generator.c:1:0: 错误:您选择的 CPU 不支持 x86-64 指令集

    generator.c:1:0: 错误:您选择的 CPU 不支持 x86-64 指令集

    make: *** [generator.o] 错误 1

    Gem 文件将继续安装在 c:/Ruby193/lib/ruby/gems/1.9.1/gems/json-1.8 中。 1 用于检查。 结果记录到 c:/Ruby193/lib/ruby/gems/1.9.1/gems/json-1.8.1/ext/json/ext/ge nerator/gem_make.out

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-10
      • 2015-07-21
      • 2011-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-17
      • 1970-01-01
      相关资源
      最近更新 更多