2

有没有办法恢复到 Mountain Lion 附带的 RubyGems 版本?我问的原因是,我安装的每个 gem 都会收到以下警告:

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rdoc/rdoc.rb:280: warning: conflicting chdir during another chdir block
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rdoc/rdoc.rb:287: warning: conflicting chdir during another chdir block

这似乎不会导致任何问题,我总是可以跳过安装文档。但是,并称我为完美主义者,我讨厌接受他们。因此,我可以恢复/降级到原始系统 Rubygems,还是可以就如何修复警告获得一些指导。

4

2 回答 2

4

您正在运行旧版本的 Ruby。1.9 来了又去,我们现在是 2.0,所以您可能需要考虑更新您的 Ruby。

我不建议更新 Apple 安装的版本。那是为了他们自己的目的,所以别管它。

相反,使用rbenv或 RVM 在您自己的主目录中安装“沙盒”红宝石,这允许您安装多个版本并在它们之间切换。

你选择哪一个取决于你。如果你不想知道你的 Ruby 版本是如何安装的,RVM 会更容易一些,它有很多特性并且非常可定制。它也更大,更复杂。rbenv 更简单,做的不多,但在我看来,更容易管理和理解。

如果您安装 RVM,请在开始之前花时间阅读整个安装页面。不要使用多用户/系统范围的安装;我们经常听到用户的悲惨故事,他们没有费心阅读说明并在中途安装了 Ruby,但导致系统无法使用。

关于升级 Rubygems,您始终可以运行gem update --system,但我建议先使用 RVM/rbenv 路径。

于 2013-06-18T22:07:31.487 回答
2

根据Tin Man的建议,这些是使用 rbenv 的步骤。

使用Homebrew在您的系统中安装rbenvruby ​​-build (一个 rbenv 插件,用于轻松安装不同的 Ruby 版本):

$ brew update
$ brew install rbenv
$ brew install ruby-build

按照 rbenv 的指示,还将以下行添加到您的个人资料中(例如~/.bash_profile):

if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi

重新启动您的终端或source ~/.bash_profile在继续之前。

找出Ruby 的最新稳定版本——在撰写本文时2.0.0-p247——并安装该版本:

$ rbenv install 2.0.0-p247
$ rbenv rehash
$ rbenv global 2.0.0-p247

然后你应该很高兴。请记住rbenv rehash在安装任何提供命令的 gem 后运行。

于 2013-08-13T14:32:35.227 回答