0

我知道在 Ruby 1.9.2 之后,'.' 出于安全原因,不再出现在您的路径中。使用某些 gem 时这似乎是一个问题(我想那些没有更新到 1.9 的?),一个引发错误的问题

$HOME/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in 'require': cannot load such file -- rubylog (LoadError)

我已经看到并解决了这个问题一次,通过(也许天真地)将一些需求更改为 require_relatives:https ://github.com/mathpunk/MongoDB_Koans/commit/e2f7898347d328450ec121d22f701508f389cc53

现在我想使用 ruby​​log,我得到了 custom_require 错误,所以我尝试了同样的技巧: https ://github.com/mathpunk/rubylog/commit/995e13dccc6a197d280d0783f3fb7fe50deabd02

但这一次,我遇到了同样的错误。我还能尝试什么?

ETA:一直以来,我一直在使用sudo gem install blah安装 gems,出于某种原因,对于 ruby​​log,它就是gem install rubylog这样做的。(与 RVM 有关?)所以现在一切正常。谢谢你。

4

2 回答 2

0

您的代码失败require 'rubylog'- 所以它无法找到 ruby​​log.rb 本身。所以只需添加包含 ruby​​log.rb 的目录来加载路径 - 类似的东西$: << 'rubylog'可能会有所帮助。

于 2012-09-20T23:41:04.767 回答
0

只需将库目录添加到您的 LOAD_PATH:

$LOAD_PATH.unshift(File.dirname(__FILE__))

请参阅了解 Ruby 的加载路径\

编辑:我假设您在rubylog运行脚本的任何地方都有一个目录。如果您的脚本找不到rubylog,那么您需要将该位置添加到您的加载路径:

$LOAD_PATH.unshift('/path/to/rubylog')

你确定你有 ruby​​log 库吗?gem install rubylog

于 2012-09-20T23:15:24.703 回答