首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在OSX上安装Mysql gem时出现错误-“Marshal data too short”

在OSX上安装Mysql gem时出现错误-“Marshal data too short”
EN

Stack Overflow用户
提问于 2009-08-02 22:16:31
回答 3查看 1.2K关注 0票数 2

尝试在OSX上安装mysql gem时出现“marshal data too short”错误。我听到了清除.gems的建议,但似乎在系统中找不到它。有人能提供帮助吗?

代码语言:javascript
复制
apple$ sudo gem install mysql --backtrace --debug
Exception `NameError' at /Library/Ruby/Site/1.8/rubygems/command_manager.rb:161 - uninitialized constant Gem::Commands::InstallCommand
Exception `Gem::LoadError' at /Library/Ruby/Site/1.8/rubygems.rb:826 - Could not find RubyGem test-unit (>= 0)

Exception `ArgumentError' at /Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:111 - marshal data too short
ERROR:  While executing gem ... (ArgumentError)
    marshal data too short
    /Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:111:in `load'
    /Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:111:in `fetch_spec'
    /Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:71:in `fetch'
    /Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:70:in `map'
    /Library/Ruby/Site/1.8/rubygems/spec_fetcher.rb:70:in `fetch'
    /Library/Ruby/Site/1.8/rubygems/dependency_installer.rb:99:in `find_gems_with_sources'
    /Library/Ruby/Site/1.8/rubygems/dependency_installer.rb:192:in `find_spec_by_name_and_version'
    /Library/Ruby/Site/1.8/rubygems/dependency_installer.rb:213:in `install'
    /Library/Ruby/Site/1.8/rubygems/commands/install_command.rb:118:in `execute'
    /Library/Ruby/Site/1.8/rubygems/commands/install_command.rb:115:in `each'
    /Library/Ruby/Site/1.8/rubygems/commands/install_command.rb:115:in `execute'
    /Library/Ruby/Site/1.8/rubygems/command.rb:257:in `invoke'
    /Library/Ruby/Site/1.8/rubygems/command_manager.rb:132:in `process_args'
    /Library/Ruby/Site/1.8/rubygems/command_manager.rb:102:in `run'
    /Library/Ruby/Site/1.8/rubygems/gem_runner.rb:58:in `run'
    /usr/bin/gem:21
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-09-09 20:29:44

如果我使用gem,我会在我的windows机器上得到同样的错误。

代码语言:javascript
复制
ERROR:  While executing gem ... (ArgumentError)    
marshal data too short

删除gem缓存目录"c:\Documents and Settings\MyUser.gem“对我来说很有效。即使你重新安装ruby,似乎也会保存一些数据。可能缓存的文件已损坏。

票数 3
EN

Stack Overflow用户

发布于 2009-08-03 08:10:18

尝试使用下面的命令。提供您的OS X中mysql目录的位置。

sudo gem install mysql -with-mysql-dir=/usr/local/mysql

http://hivelogic.com/articles/installing-mysql-on-mac-os-x/

如果您没有正确安装Mysql,请检查在Mac OSX上安装Mysql的链接。

祝你好运!

票数 0
EN

Stack Overflow用户

发布于 2009-08-03 22:06:33

此外,.gem目录位于您的主目录中:/Users/yourname/.gem

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1220009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档