无效的规格缓存文件 [英] Invalid spec cache file
问题描述
我在安装了Windows 8的Gem 2.2.2上安装了ruby 2.0.0p247 [x64-mingw32]。我有一个永久性问题gem,使它几乎无法使用。每当我尝试安装一个新的gem时,我总会得到:
错误:在执行gem时...无效的spec缓存文件在C:/ Users / ...
过去,我已经能够运行 gem update
或 gem update --system
,这样就可以解决 one,single gem install
。随后的安装将会失败并出现相同的错误。
我试过删除 users /.../。gem
目录。当我这样做时, gem update
会重新创建该目录,并且会立即失败,并显示相同的错误消息。 $ b 安装ruby 1.9.8几次试图解决问题,然后升级到ruby 2.0.0。在所有重新安装和升级过程中,问题依然存在。
我在这里结束了智慧。谁能帮我解决这个问题?
c $ c> L:\xampp\htdocs\frameworks\yii2\framework> gem update --backtrace更新已安装的宝石
错误:执行gem时...(Gem ::例外)
C中无效的spec缓存文件:/Users/Larry/.gem/specs/rubygems.org%443/specs.4.8
C:/Ruby200-x64/lib/ruby/site_ruby/2.0 .0 / rubygems / source.rb:187:在`rescue in load_specs'
C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/source.rb:179:在`load_specs'
C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/spec_fetcher.rb:266:在`tuples_for'
C:/ Ruby200-x64 / lib / ruby / site_ruby / 2.0.0 / rubygems / spec_fetcher.rb:228:在`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:在`each_source'
C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/spec_fetcher.rb:222:在`available_specs'
C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/ rubygems / spec_fetcher.rb:102:在`search_for_dependency'
C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/commands/update_command.rb:113:在`fetch_remote_gems'
C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/commands/update_command.rb:135:在`highest_remote_version'
C:/Ruby200-x64/lib/ruby/site_ruby/2.0 .0 / rubygems / commands / update_command.rb:264:在`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:在`which_to_update'
C:/ Ruby200-x64 / lib / ruby / site_ruby / 2.0.0 / rubygems / commands / update_command.rb:96:在`execute'
C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/command.rb :305:在`invoke_with_build_arg s'
C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/command_manager.rb:167:在`process_args'
C:/ Ruby200-x64 / lib / ruby / site_ruby / 2.0.0 / rubygems / command_manager.rb:137:在'run'中
C:/Ruby200-x64/lib/ruby/site_ruby/2.0.0/rubygems/gem_runner.rb:54:在'run '
C:/ Ruby200-x64 / bin / gem:21:在< main>'
删除<$中的文件夹
删除<$>中的文件夹c $ c> users /%user%/。gem / 并重新运行命令 gem sources --update
希望这有助于。
I have ruby 2.0.0p247 [x64-mingw32] with Gem 2.2.2 installed on Windows 8. I have a persistent problem gem that is making it virtually unusable. Whenever I try to install a new gem, I invariably get:
ERROR: While executing gem ... Invalid spec cache file in C:/Users/...
In the past, I've been able to run gem update
or gem update --system
and that would clear up the problem for one, single gem install
. Subsequent install would fail with the same error. Now even gem update fails with that error message.
I've tried deleting the users/.../.gem
directory. When I do that, gem update
recreates that directory and promptly fails with the same error message.
I re-installed ruby 1.9.8 with gems several times to try to cure the problem, then upgraded to ruby 2.0.0. Throughout all re-installs and upgrades, the problem persisted.
I'm at my wits end here. Can anyone help me resolve this issue?
Here's the backtrace on the edit"
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 `<main>'
I had the same problem, but was able to fix it this way:
Delete the folder in users/%user%/.gem/
and rerun the command gem sources --update
Hope this helps.
这篇关于无效的规格缓存文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!