irb 使用 rbenv 加载错误的 ruby​​ 和 gem 路径

发布于 2024-12-19 13:20:51 字数 2089 浏览 5 评论 0原文

我开始使用 rbenv 进行 ruby​​ 版本管理,我发现 irb 没有加载正确的 ruby​​ 版本和 gem 版本。以下是详细信息。

irb Gem.path 说:

`>> Gem.path  
 => ["/Users/Air/.gem/ruby/1.8", "/Library/Ruby/Gems/1.8", "/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8"]`

现在在 irb 中,如果我输入: puts $:

`>> puts $:  
/Library/Ruby/Site/1.8  
/Library/Ruby/Site/1.8/powerpc-darwin11.0  
/Library/Ruby/Site/1.8/universal-darwin11.0  
/Library/Ruby/Site  
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/vendor_ruby/1.8 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/vendor_ruby/1.8/universal-darwin11.0  
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/vendor_ruby  
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8  
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/powerpc-darwin11.0  
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin11.0`

在 shell 中输入: gem env

`RubyGems Environment:  
  - RUBYGEMS VERSION: 1.8.10  
  - RUBY VERSION: 1.9.2 (2011-07-09 patchlevel 290) [x86_64-darwin11.0.1]  
  - INSTALLATION DIRECTORY: /Users/Air/.rbenv/versions/1.9.2-p290/lib/ruby/gems/1.9.1  
  - RUBY EXECUTABLE: /Users/Air/.rbenv/versions/1.9.2-p290/bin/ruby  
  - EXECUTABLE DIRECTORY: /Users/Air/.rbenv/versions/1.9.2-p290/bin  
  - RUBYGEMS PLATFORMS:  
    - ruby  
    - x86_64-darwin-11  
  - GEM PATHS:  
     - /Users/Air/.rbenv/versions/1.9.2-p290/lib/ruby/gems/1.9.1  
     - /Users/Air/.gem/ruby/1.9.1  
  - GEM CONFIGURATION:  
     - :update_sources => true  
     - :verbose => true  
     - :benchmark => false   
     - :backtrace => false  
     - :bulk_threshold => 1000  
  - REMOTE SOURCES:  
     - http://rubygems.org/`  

我可以看到 < strong>irb正在加载错误的Ruby版本并加载错误的Gem路径。有人可以帮助理解我该如何解决这个问题吗?我正在使用 rbenv 进行 ruby​​ 版本管理,不确定它是如何发挥作用的。建议?

I started using rbenv for ruby version management and I'm finding that irb not loading the correct ruby version and gem version. Here are the details.

irb Gem.path says:

`>> Gem.path  
 => ["/Users/Air/.gem/ruby/1.8", "/Library/Ruby/Gems/1.8", "/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8"]`

Now in irb if I type: puts $:

`>> puts $:  
/Library/Ruby/Site/1.8  
/Library/Ruby/Site/1.8/powerpc-darwin11.0  
/Library/Ruby/Site/1.8/universal-darwin11.0  
/Library/Ruby/Site  
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/vendor_ruby/1.8 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/vendor_ruby/1.8/universal-darwin11.0  
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/vendor_ruby  
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8  
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/powerpc-darwin11.0  
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin11.0`

In the shell I type: gem env

`RubyGems Environment:  
  - RUBYGEMS VERSION: 1.8.10  
  - RUBY VERSION: 1.9.2 (2011-07-09 patchlevel 290) [x86_64-darwin11.0.1]  
  - INSTALLATION DIRECTORY: /Users/Air/.rbenv/versions/1.9.2-p290/lib/ruby/gems/1.9.1  
  - RUBY EXECUTABLE: /Users/Air/.rbenv/versions/1.9.2-p290/bin/ruby  
  - EXECUTABLE DIRECTORY: /Users/Air/.rbenv/versions/1.9.2-p290/bin  
  - RUBYGEMS PLATFORMS:  
    - ruby  
    - x86_64-darwin-11  
  - GEM PATHS:  
     - /Users/Air/.rbenv/versions/1.9.2-p290/lib/ruby/gems/1.9.1  
     - /Users/Air/.gem/ruby/1.9.1  
  - GEM CONFIGURATION:  
     - :update_sources => true  
     - :verbose => true  
     - :benchmark => false   
     - :backtrace => false  
     - :bulk_threshold => 1000  
  - REMOTE SOURCES:  
     - http://rubygems.org/`  

I can see that irb is loading the wrong Ruby version and loading the wrong Gem path. Can someone help understand how do I fix this. I am using rbenv for ruby version management not sure how that plays into things. Advice?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

一江春梦 2024-12-26 13:20:51

确保您正确设置路径并在您使用的 shell 中初始化 rbenv。

我已将以下几行添加到我的 .bash_profile 中:

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

我遇到了您所展示的问题,直到我记得这样做。

还要记住设置 ruby​​ 的全局 rbenv 版本

Make sure you are setting your path correctly and initializing rbenv in the shell you are using.

I've added the following lines to my .bash_profile:

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

I had the problems you are exhibiting until I remembered to do this.

Also remember to set your global rbenv version of ruby

木格 2024-12-26 13:20:51

使用 rbenv 安装 ruby​​ 后。

您是否使用命令

$ rbenv rehash重建了 shim 二进制文件

Once installed ruby using rbenv.

Have you rebuilded the shim binaries using the command

$ rbenv rehash

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文