【问题标题】:cannot load such file — rubygems.rb无法加载此类文件 — ruby​​gems.rb
【发布时间】:2014-10-09 06:48:25
【问题描述】:

要打开这个项目(狂欢),我需要使用 ruby​​-2.1.2。我同时安装了 ruby​​-2.1.0 和 ruby​​-2.1.2,但我认为 2.1.2 版本由于某种原因已损坏,我似乎无法使用它。

|~/desktop/ix/projects/revel> rvm use 2.1.2
Using /Users/lianoosh/.rvm/gems/ruby-2.1.2
<internal:gem_prelude>:1:in `require': cannot load such file -- rubygems.rb (LoadError)
    from <internal:gem_prelude>:1:in `<compiled>'

|~/desktop/ix/projects/revel> gem list
<internal:gem_prelude>:1:in `require': cannot load such file -- rubygems.rb (LoadError)
    from <internal:gem_prelude>:1:in `<compiled>'

|~/desktop/ix/projects/revel> gem update --system 
<internal:gem_prelude>:1:in `require': cannot load such file -- rubygems.rb (LoadError)
    from <internal:gem_prelude>:1:in `<compiled>'

当我尝试卸载重新安装时,我得到:

|~/desktop/ix/projects/revel> rvm uninstall 2.1.2
ruby-2.1.2 - #removing rubies/ruby-2.1.2............................................................................................................................|
Error running '__rvm_rm_rf /Users/lianoosh/.rvm/rubies/ruby-2.1.2',
showing last 15 lines of /Users/lianoosh/.rvm/log/1408110977_ruby-2.1.2/remove.rubies.log
rm: /Users/lianoosh/.rvm/rubies/ruby-2.1.2/lib/ruby/gems/2.1.0/gems/tzinfo-1.2.1/test/zoneinfo: Permission denied
rm: /Users/lianoosh/.rvm/rubies/ruby-2.1.2/lib/ruby/gems/2.1.0/gems/tzinfo-1.2.1/test: Permission denied
rm: /Users/lianoosh/.rvm/rubies/ruby-2.1.2/lib/ruby/gems/2.1.0/gems/tzinfo-1.2.1/tzinfo.gemspec: Permission denied
rm: /Users/lianoosh/.rvm/rubies/ruby-2.1.2/lib/ruby/gems/2.1.0/gems/tzinfo-1.2.1: Directory not empty
rm: /Users/lianoosh/.rvm/rubies/ruby-2.1.2/lib/ruby/gems/2.1.0/gems: Directory not empty
rm: /Users/lianoosh/.rvm/rubies/ruby-2.1.2/lib/ruby/gems/2.1.0: Directory not empty
rm: /Users/lianoosh/.rvm/rubies/ruby-2.1.2/lib/ruby/gems: Directory not empty
rm: /Users/lianoosh/.rvm/rubies/ruby-2.1.2/lib/ruby: Directory not empty
rm: /Users/lianoosh/.rvm/rubies/ruby-2.1.2/lib: Directory not empty
rm: /Users/lianoosh/.rvm/rubies/ruby-2.1.2: Directory not empty
++ typeset ret=1
++ rvm_debug '__rvm_rm_rf error removing target dir '\''/Users/lianoosh/.rvm/rubies/ruby-2.1.2'\''.'
++ ((  0  ))
++ return 0
++ return 1

然后:

|~/desktop/ix/projects/revel> rvm list

rvm rubies

   ruby-2.1.0 [ x86_64 ]
=* ruby-2.1.2 [ missing bin/ruby ]

# => - current
# =* - current && default
#  * - default

所以当我尝试重新安装时,我得到:

Already installed ruby-2.1.2.
To reinstall use:

    rvm reinstall ruby-2.1.2

当我这样做时,我会收到一堆权限被拒绝的消息,并且目录不为空,然后直接回到我开始的地方。 另外:

Empty path passed to certificates update, functions stack: requirements_osx_update_openssl_cert_run rvm_requiremnts_fail_or_run_action __rvm_osx_ssl_certs_ensure_for_ruby __rvm_osx_ssl_certs_ensure_for_ruby_except_jruby external_import_setup external_import main

请帮忙!

【问题讨论】:

  • 不是一个直接的答案,但我发现使用rbenv 管理版本比rvm 更容易。

标签: ruby-on-rails ruby terminal rvm


【解决方案1】:

试试这个:

rvm fix-permissions

rvm reinstall 2.1.2

【讨论】:

    【解决方案2】:

    即使我今天也遇到了这个问题,但再次安装 Ruby 对我来说似乎并不正确,因为从昨天开始一切都对我运行良好

    根据错误,我刚刚更新了 RubyGem,这对我来说效果很好。

    gem install rubygems-update
    
    update_rubygems
    

    【讨论】:

      【解决方案3】:

      红宝石损坏的问题,如果是 RVM,可以通过一个非常简单但不整洁的方法解决 - rvm 重新安装
      您需要删除 RVM,以及所有红宝石。
      请参考此@ 987654321@

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-11-03
        • 1970-01-01
        • 1970-01-01
        • 2015-01-22
        • 2012-10-25
        • 2012-02-27
        • 2013-09-30
        相关资源
        最近更新 更多