无效的规范缓存文件

我在Windows 8上安装了带有Gem 2.2.2的ruby 2.0.0p247 [x64-mingw32]。我有一个持久性问题gem,使它几乎无法使用。 每当我尝试安装新gem时,我总会得到:

ERROR: While executing gem ... Invalid spec cache file in C:/Users/... 

在过去,我已经能够运行gem updategem update --system ,这将解决单个 gem install 。 后续安装将失败并出现相同的错误。 现在甚至gem更新失败并显示该错误消息。

我试过删除users/.../.gem目录。 当我这样做时, gem update重新创建该目录并立即失败,并显示相同的错误消息。

我用gem重新安装了ruby 1.9.8几次试图解决问题,然后升级到ruby 2.0.0。 在所有重新安装和升级过程中,问题仍然存在。

我在这里结束了我的智慧。 任何人都可以帮我解决这个问题吗?

这是编辑中的回溯“

 L:\xampp\htdocs\frameworks\yii2\framework>gem update --backtrace Updating installed gems ERROR: While executing gem ... (Gem::Exception) Invalid spec cache file in C:/Users/Larry/.gem/specs/rubygems.org%443/specs.4.8 C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/source.rb:187:in `rescue in load_specs' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/source.rb:179:in `load_specs' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/spec_fetcher.rb:266:in `tuples_for' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/spec_fetcher.rb:228:in `block in available_specs' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/source_list.rb:97:in `each' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/source_list.rb:97:in `each_source' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/spec_fetcher.rb:222:in `available_specs' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/spec_fetcher.rb:102:in `search_for_dependency' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/commands/update_command.rb:113:in `fetch_remote_gems' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/commands/update_command.rb:135:in `highest_remote_version' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/commands/update_command.rb:264:in `block in which_to_update' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/commands/update_command.rb:260:in `each' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/commands/update_command.rb:260:in `which_to_update' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/commands/update_command.rb:96:in `execute' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/command.rb:305:in `invoke_with_build_args' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/command_manager.rb:167:in `process_args' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/command_manager.rb:137:in `run' C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/gem_runner.rb:54:in `run' C:/Ruby200-x64/bin/gem:21:in `' 

我有同样的问题,但能够以这种方式解决它:

删除users/%user%/.gem/的文件夹,然后重新运行命令gem sources --update

希望这可以帮助。