ruby-on-rails - 执行 rvm ruby​​gems latest 时出错

标签 ruby-on-rails

我正在将 ruby​​ 1.9.2 添加到运行 10.6.8 的 Mac 并遇到了 rvm ruby​​gems latest 的问题。我已经毫无问题地运行了以下命令:

$ rvm install 1.9.2
$ rvm use 1.9.2
$ ruby --version
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-darwin10.8.0]

然后就报错了:

$ rvm rubygems latest
Removing old Rubygems files...
Installing rubygems-1.8.10 for system ...
ERROR: Error running 'GEM_PATH=":@global" GEM_HOME="" "/usr/local/rvm/rubies//bin/ruby" "/usr/local/rvm/src/rubygems-1.8.10/setup.rb"', please read /usr/local/rvm/log/system/rubygems.install.log
WARN: Installation of rubygems did not complete successfully.
ln: /usr/local/rvm/rubies//lib/ruby/gems/: No such file or directory

这里显而易见的是 bin/ruby 和 lib/ruby 路径中的额外正斜杠。有什么想法是从哪里来的以及如何解决吗?

请注意,我的 .bash_profile 文件末尾还有以下行:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function

我正在做所有这些,以便我可以运行 Octopress。我还有一个正在同一台机器上开发的 Rails 2.3.8 项目。这是我第一次处理 ruby​​ (1.8.7) 系统版本以外的任何东西。

最佳答案

我遇到过同样的问题,虽然我没有真正完全理解为什么会这样,但针对主要症状为我解决了。

您的系统上似乎已经安装了另一个版本的 ruby​​。 rvm ruby​​gems 脚本中产生错误的行是这样的:

__rvm_run "rubygems.install"\ "GEM_PATH=\"$GEM_PATH:${GEM_PATH%%@*}@global\"GEM_HOME=\"$GEM_HOME\"\"${rvm_ruby_binary}\"\"${rvm_src_path}/$rvm_gem_package_name/setup.rb\“”\ “正在为 ${rvm_ruby_string} 安装 $rvm_gem_package_name ...” https://github.com/wayneeseguin/rvm/blob/master/scripts/rubygems#L104

我认为在内部 rvm 正在迷失自己并创建带有双斜杠的路径,可能是因为 RVM 将 RVM 本地目录附加到类似于 which ruby​​ (或其他任何命令)的输出rvm 正在搜索的路径可能是)。我真的不知道为什么会这样(RVM 不能在安装了 ruby​​ 的系统中工作吗?)。

无论如何,为了在我的机器上修复这个问题,我只是运行了sudo aptitude purge ruby​​(你当然会运行与之等效的 MAC),以删除与 rvm 混淆的 ruby​​ 版本。

如果您的计算机上安装了与 ruby​​ 相关的东西,我认为一个好主意是将它们全部删除,并使用 RVM 来管理所有与 ruby​​ 相关的东西。

在 linux (debian/ubuntu) 上,一个好的方法是输入 dpkg -l | grep ruby​​ 查看您的机器上安装了哪些与 ruby​​ 相关的包,然后将它们全部清除。

之后,运行

$ rvm use 1.9.2
$ rvm rubygems latest

一切都应该像魅力一样运作。至少卸载 ruby​​ 对我有用。

希望对您有所帮助。

关于ruby-on-rails - 执行 rvm ruby​​gems latest 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8090499/

相关文章:

ruby-on-rails - 无法使用包含两个冒号的 css 属性在 nokogiri 中选择节点

jquery - 为什么 jQuery 的serializeArray 在它的文档没有显示任何参数的情况下却在 Rails 中获取参数?

ruby-on-rails - Rails + Devise 嵌套注册表未定义方法 'build_address'

ruby-on-rails - 使用 wicked_pdf gem 和 wkhtmltopdf 在 PDF 上显示图像标题

ruby-on-rails - Mongoid 是否存在缩放方面的困难?

ruby-on-rails - Devise_token_auth 冲突?

ruby-on-rails - Heroku 推送被拒绝,无法通过 Bundler 安装 gem

ruby-on-rails - 告诉 gem 使用 Gemfile.lock 中的现有库

ruby-on-rails - rails 4 - 每次运行 rake db :migrate command 时,rake 命令都会显示弃用警告

ruby-on-rails - 如何配置 procfile,sidekiq.yml 以便不同的 sidekiq 队列在 heroku 中的不同 dynos 上运行?