我应该在IRB中使用负载还是需要?

时间:2012-05-14 14:15:38

标签: ruby irb

我的印象是我应该使用require 'some_path'来获取我想要使用的文件或库,但我无法让它工作,load 'some_path'有效。

我应该在何时使用这些?

此外,是否可以导入包含loadrequire命令的目录?我正在尝试使用整个目录,但到目前为止,我只能使用load一次获得一个文件。

2 个答案:

答案 0 :(得分:1)

一旦你为一个文件调用require,进一步调用require将不再需要它(即没有效果),而load每次调用时都会重新加载它。据我所知,没有办法加载整个目录。

答案 1 :(得分:1)

您可以使用Dir列出以.rb结尾的所有文件并要求/加载它们

 Dir["/path/to/dir/*.rb"].each { |file| load_your_file_here(file) }

我建议要求文件然后包含文件加载的模块...如果你没有在文件中使用模块或类,那么你应该重新考虑你的结构。

加载可能会产生一些意想不到的后果,而且效果不佳。