RUBYLIB 环境路径



所以目前我已经在我的.bashrc文件中包含了以下内容。

export RUBYLIB=/home/git/project/app/helpers

我正在尝试使用具有以下规范的规范运行 rspec

require 'output_helper'

此文件位于帮助程序目录中。 我的问题是,当我将导出行更改为:

export RUBYLIB=/home/git/project/

它不再找到帮助程序文件。 我认为 ruby 应该搜索我提供的整个路径,而不仅仅是提供的最外层目录? 这是正确的思考方式吗? 如果没有,我怎样才能使 RUBY 搜索所有子目录及其子目录等?

谢谢

知更鸟

PATH 类似,您需要显式命名要在其下查找库的目录。但是,这不包括其中的任何子目录,因此您还需要列出任何子子目录,并用冒号分隔它们。

例如:

export RUBYLIB=/home/git/project:/home/git/project/app/helpers

正如buruzaemon 所提到的,Ruby 不搜索子目录,因此您需要在搜索路径中包含所需的所有目录。 但是,您可能想要做的是:

require 'app/helpers/output_helper'

这样,您就不依赖于以某种方式设置RUBYLIB环境变量。 当您将代码部署到生产环境或与他人协作时,这些小依赖项可能会导致烦人的调试会话。

此外,作为旁注,您可以将.指定为搜索路径,而不是使用特定于计算机的绝对路径。

相关内容

  • 没有找到相关文章

最新更新