未定义的方法`end_with?'为“没有这样的文件加载 - Win32API”:字符串(NoMethodError)

时间:2011-02-10 16:10:03

标签: ruby-on-rails ruby gem require ubuntu-8.04

我只是设置一个新的服务器并希望安装Twitter gem但是在Ubuntu 8.04 / Ruby 1.8.6上遇到问题

它说“multi_json需要RubyGems> = 1.3.6”,但是运行“gem update --system”显然会尝试和更新RubyGems 1.5,这在Ruby 1.8.6上是无法完成的,并且在以下情况下失败错误:

 undefined method `end_with?' for "no such file to load -- Win32API":String (NoMethodError)

 from ./lib/rubygems/config_file.rb:55
 from ./lib/rubygems/custom_require.rb:29:in 'gem_original_require'
 from ./lib/rubygems/custom_require.rb:29:in 'require'

 ...

有什么想法吗?

由于

史蒂夫

1 个答案:

答案 0 :(得分:3)

升级文档提到您可以使用以下命令降级gems。我只想说它可能适用于升级到特定版本:

gem update --system 1.3.7

根据我刚刚收到的评论,您也可以尝试安装一个更老的宝石。

例如(使用root / sudo):

cd /usr/src && wget http://production.cf.rubygems.org/rubygems/rubygems-1.3.7.tgz

tar -xvf rubygems-1.3.7.tgz

ruby setup.rb