我知道我可以使用目录中的所有文件
Dir['path/to/files/**/*.rb'].each { |file| require file }
但是,我正在尝试为 gem 设置文件执行此操作,如下所示:
class MyGem
module NS; end
end
Dir['lib/my_gem/files/**/*.rb'].each { |file| require file }
(其中所有文件lib/my_gem/files
都在 MyGem::NS 下命名)。使用如下所示的目录结构:
lib
|-- my_gem
| |-- files
| | |-- file1.rb
| | |-- file2.rb
| | |-- file3.rb
| | `-- ... (many more)
`-- my_gem.rb
my_gem.gemspec
而且,Dir
当我在另一个文件中需要我的 gem 时,该命令似乎不起作用,因为它似乎在运行时在我的项目根目录中查找文件路径(无论我需要我的 gem 的任何项目)。
如何要求 inlib/my_gem/files
中的所有文件lib/my_gem.rb
?