我想将vendor / gems / gems / ** / lib中的所有内容打到加载路径上。我有办法做到这一点,但它只是感觉笨重。 现在,我是通过以下方式做到的:
base = File.expand_path(File.join(File.dirname(__FILE__), "..", "vendor", "gems", "gems"))
libs = File.join(base, "**", "lib")
Dir.glob(libs) { |lib| $LOAD_PATH.unshift lib}
我确信有更好的方法可以做到这一点。
答案 0 :(得分:2)
我认为通过File
设置基本路径很好。但是您不需要遍历目录列表就可以将它们放入$LOAD_PATH
。您可以使用unshift
并展开数组。
libs = File.expand_path("../../vendor/gems/**/lib", __FILE__)
$LOAD_PATH.unshift *Dir.glob(libs)