【问题标题】:invalid gem format无效的宝石格式
【发布时间】:2009-01-20 00:16:45
【问题描述】:
在 Ruby Enterprise Edition (OS X) 上安装 Merb 会引发此错误,有什么想法吗?
sudo gem install merb
ERROR: Error installing merb:
invalid gem format for /opt/ruby-enterprise-1.8.6-20090113/lib/ruby/gems/1.8/cache/ParseTree-3.0.2.gem
已删除 gem 缓存,但问题仍然存在。它似乎设法安装了一些宝石。
【问题讨论】:
标签:
ruby
rubygems
passenger
merb
【解决方案1】:
删除缓存(ruby-enterprise-1.8.6-20090113/lib/ruby/gems/1.8/cache/*)和有问题的gem文件夹似乎暂时有效,尽管现在我遇到了另一个依赖merb-action的问题-args..
【解决方案2】:
在我们的案例中,问题在于宝石的 URL 被我们公司的 Web 内容过滤器 (Websense) 阻止。我在文本编辑器上打开 gem 文件,发现一个阻止页面消息而不是实际内容,所以我必须取消阻止 URL。
【解决方案3】:
我找到了解决方案。基本上,每当安装/更新新的 gem 时,系统都会从 github 下载然后安装它。我们知道,在 github 上,gems 的工作始终在进行中。所以无论如何,格式不正确的 gem 都会被更新。
所以我的解决方案是从运行 rails 应用程序的任何服务器/系统下载 gem,然后安装它。