ruby - 找不到 RubyGem haml

标签 ruby rubygems textmate haml

使用全新安装的 Ruby 1.9.2(通过 RVM)、Textmate 和 Handcrafted Haml 包,我在尝试使用它时遇到以下错误:

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:827:in report_activate_error': Could not find RubyGem haml (>= 0) (Gem::LoadError) from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:261:inactivate' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:68:in `gem' from -e:1

我运行 sudo gem install haml 并成功安装。 ruby -v 的输出是 1.9.2p180。似乎 TextMate 仍在寻找我的系统 (Mac OS X) 版本的 Ruby,而不是我安装的新版本 (1.9.2)。当我查看 RVM 管理的 Ruby 1.9.2 安装的 gemsets 时,加载了 Haml gem。关于如何让 TextMate 在我新的/正确的 gemset 中搜索 gem 有什么想法吗?

最佳答案

您需要告诉 TextMate 使用哪个 Ruby。正如您所猜测的,并且可以从错误中看出,TextMate 的 PATH 导致它使用 /usr/bin/ruby。查看这些问题及其答案:

我个人在 /usr/local/bin 中使用我自己的非 RVM 手工编译的 Ruby,所以我进入了
TextMate->首选项->高级->Shell 变量
并创建一个名为 PATH 的变量,并将其设置为
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

请注意,我已将 /usr/local/bin 放在 /usr/bin 之前,以便找到我的 ruby在系统之前。

关于ruby - 找不到 RubyGem haml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5696376/

相关文章:

parsing - 在哪里可以找到解析源代码并能够提取光标当前在代码中的范围的库?

ruby - 方法定义旁边的 Ruby 语言结构是什么

ruby - 如何使用 ruby​​ 1.8.7 安装 capistrano v2.13.5?

ruby-on-rails - ROR 推送通知引擎

ruby - 在我的 gem 中使用 bundler

textmate - TextMate是否有一种简单的方法来缩进HAML文件的2个空格?

ruby - 如何使用 Savon 将属性添加到 header 标签?

ruby-on-rails - 从字符串中提取标签

xml - 在 ruby​​ 中解析带有 <% %> 标签的 xml 文档

python - 如何判断mac和mac程序使用的是哪个python