是否';要求';在Ruby中不自动包含子文件夹?

是否';要求';在Ruby中不自动包含子文件夹?,ruby,require,Ruby,Require,如果我有此文件夹结构: rexml rexml/document 下面的语法不是包含其下所有内容的递归引用吗 require 'rexml' 或者,如果我还想访问“文档”中的内容,是否需要编写以下内容: require 'rexml/document' 我感到困惑的原因是我看到一些代码,其中作者一个接一个地编写两个require语句: require 'rexml' require 'rexml/document' 我不确定这是否真的有必要。在Ruby中,require只需要一个文件。在

如果我有此文件夹结构:

rexml
rexml/document
下面的语法不是包含其下所有内容的递归引用吗

require 'rexml'
或者,如果我还想访问
“文档”
中的内容,是否需要编写以下内容:

require 'rexml/document'
我感到困惑的原因是我看到一些代码,其中作者一个接一个地编写两个require语句:

require 'rexml'
require 'rexml/document'

我不确定这是否真的有必要。

在Ruby中,
require
只需要一个文件。在许多情况下,库/gems的作者将确保单个文件需要使用库所需的所有其他代码,例如,请参阅。但是,这可能因库而异,对于REXML,似乎确实需要“REXML/document”。

Ruby的标准
require
仅加载Ruby文件,而不加载文件夹或任何其他内容。当您说“require'rexml'”时,实际上是说“在$:中的一个路径中查找'rexml.rb'并加载它。”因此,“require'rexml/document'”在$:”中的一个路径中的文件夹“rexml”中查找文件“document.rb”