我使用 ruby-aws gem 维护一个基于 ruby 的应用程序,该 gem 与 Mechanical Turk 交互以创建 HIT 并在 HIT 完成后下载数据。
我刚收到一封来自亚马逊的电子邮件,要求我升级 SDK,因为它们现在要求您使用 SSL 访问 API(最后日期是 2011 年底)
在更新 gem 之前,该应用程序运行良好。
但是,在更新 gem 之后,我在代码的第二行收到一个错误,内容如下:
require "rubygems"
require "ruby-aws"
...
我收到以下错误:
C:/Ruby192/lib/ruby/gems/1.9.1/gems/ruby-aws-1.3.1/lib/ruby-aws/version.rb:8:in ``': No su
ch file or directory - git describe --tags --always --dirty (Errno::ENOENT)
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/ruby-aws-1.3.1/lib/ruby-aws/version.rb:8:
in `<module:RubyAWS>'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/ruby-aws-1.3.1/lib/ruby-aws/version.rb:4:
in `<top (required)>'
from C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require
'
from C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require
'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/ruby-aws-1.3.1/lib/ruby-aws.rb:4:in `<top
(required)>'
from C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:59:in `require
'
from C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:59:in `rescue
in require'
from C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in `require
'
from create_hit.rb:2:in `<main>'
我尝试过的事情:
- 执行完整的宝石更新。(宝石更新)
- 使用必需的 gem 卸载并重新安装 ruby 1.8.7。
- 在新的干净机器上安装 Ruby 1.8.7。
- 使用必需的 gem 安装 Ruby 1.9.2。
我过去两天一直在搜索论坛等,但无法弄清楚出了什么问题。我并不是真正的 Ruby 专家(刚刚开始)——所以我可能会遗漏一些非常基本的东西。
任何帮助将不胜感激。
谢谢你。