错误:执行gem ...(Zlib :: GzipFile :: Error)时不是gzip格式

时间:2012-12-03 13:21:10

标签: ruby gem sencha-touch sass compass-sass

我正在开发Sencha touch 2应用程序。我一直在关注有关secha touch应用程序主题的“Styling the user interface of a Sencha Touch application”教程。

它需要我安装Ruby,Compass和SASS。 我使用rubyinstaller.org的安装程序安装了Ruby。

执行以下命令时,我得到确认正确安装的预期结果:

C:\>ruby -v

ruby 1.9.3p327 (2012-11-10) [i386-mingw32]

当前来源是最新的:

C:\>gem sources

** CURRENT SOURCES **

http://rubygems.org/

接下来,由于我在代理后面,我使用以下命令安装HAML / Compass:

C:\>gem install -p [proxy:port] compass

ERROR:  While executing gem ... (Zlib::GzipFile::Error)
not in gzip format**

有人能帮助我吗?我找到了诸如系统更新,gem源更新等解决方案,但是我的系统上的所有内容都是最新的。


编辑:

C:\>gem install compass

在我的私人系统上完美运行。当我从我的工作场所尝试相同的命令时,我需要使用上面提到的代理,这会导致错误。

2 个答案:

答案 0 :(得分:6)

我认为发生了错误,因为我工作场所的网络感会阻止这些下载。

解决方案:我直接从http://rubygems.org/gems下载了所需的宝石: chunky_png,fssm,指南针,sass,haml ..并将这些宝石放入我的本地目录。

在此之后我试了gem install compass。这首先搜索您的本地目录。在找到所需的宝石后,进行安装。不需要连接到ruby网站。

注意:从宝石所在的路径运行命令

例如:我已将宝石放在C:\ Ruby193 \ lib \ ruby​​ \ gems \ 1.9.1 \ gems

所以我运行以下命令:

C:\Ruby193\lib\ruby\gems\1.9.1\gems>gem install compass

答案 1 :(得分:2)

我遇到了类似的问题,它在我自己的私人笔记本电脑上工作,但在使用虚拟服务器(运行Ubuntu 12.10)时使用代理时失败了。

根据我的建议,我发现here,从我定义的命令行:

export HTTPS_PROXY=proxy-address:proxy-port-number

export HTTP_PROXY=proxy-address:proxy-port-number

然后我的 gem安装包工作正常。