我试图避免向 ruby's 添加冗余路径LOAD_PATH
。这不是一项非常复杂的任务,我只是想知道是否有比我想出的更清洁的方法。
这是我目前的解决方案:
def add_loadpath(new_path)
included = $LOAD_PATH.inject(false) do |acc,path|
acc || new_path == File.expand_path(path)
end
$LOAD_PATH.unshift new_path unless included
end
$LOAD_PATH.unshift SOME_PATH
然后,您不会像往常一样打电话
add_loadpath SOME_PATH
这是为了避免在加载路径包含两个指向同一个文件夹但不是同一个字符串的路径时出现问题。例如foo/../bar
和bar