在Ruby 1.9.2中使用ActiveSupport失败

时间:2010-11-12 09:35:52

标签: ruby-1.9 activesupport

我在Ruby脚本中需要ActiveSupport,如下所示:

require 'rubygems'
require 'active_support/core_ext/hash'

使用some_hash.with_indifferent_access。

在Ruby 1.8中运行良好但Ruby 1.9引发了以下异常:

<internal:lib/rubygems/custom_require>:29:in `require': no such file to load -- active_support/core_ext/hash (LoadError)
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from backup.rb:3:in `<main>'

在Ruby 1.9.2中执行此操作的正确方法是什么?

2 个答案:

答案 0 :(得分:2)

使用 ruby​​ 1.9.2 activesupport 2.3.5 进入同样的问题。跑gem update activesupport,更新为 3.2.9 ,问题就消失了。

答案 1 :(得分:1)

首先,Ruby 1.9已经包含了rubygems,所以你不需要包含它。

其次,在Ruby 1.9.1和带有ActiveSupport 3.0.3的Ruby 1.9.2下,这对我来说很好。您确定在正在测​​试的相同Ruby环境下正确安装了activesupport gem吗? (也许ruby --versiongem list可能会显示出错误。)