我无法从给定目录导入我需要的所有 .rb 文件,我知道这个问题已经被问了很多,但之前的帖子似乎都没有解决我的问题。
这是我的目录结构:
- Docs
- Lexer
- Parser
--> Parser.rb
- SyntaxTree
--> I want all the .rb files from here
--> Sets.rb (Module I want to import)
--> EMPTY_SET (constant I want to reference)
- Test
<Main Program>
我目前在 Parser.rb 中工作,我需要从 SyntaxTree 目录中获取所有 .rb 文件,以便可以在 Parser.rb 中引用它们。我还想导入 Sets.rb 中包含的 Sets 模块。
这是我目前尝试导入我在之前的大多数帖子中看到的所有 ruby 文件的方式:
Dir['../SyntaxTree/*.rb'].each {|file| require file}
我也试过:
Dir['../SyntaxTree/*.rb'].each {|file| require_relative file}
在尝试包含 Sets 模块时,使用其中任何一种方法仍然会出错:
class Parser
include Sets
.
.
end
`<class:Parser>': uninitialized constant Parser::Sets (NameError)
如果我直接包含Sets.rb
错误就会消失
任何想法都会非常有帮助。