我得到了这个'要求'无法加载此类文件错误。
我之前得到了这个,我添加了
__LIB_DIR__ = File.expand_path(File.join(File.dirname(__FILE__), ".."))
unless $LOAD_PATH.include?(__LIB_DIR__)
$LOAD_PATH.unshift(__LIB_DIR__)
end
我想知道这是做什么的?我在主要的“要求”中添加了这个。我的项目的文件。 现在我写一个测试用例,
$:.unshift File.join(File.dirname(__FILE__), ".")
我尝试运行它,我得到了LoadError。我也试过require_relative
没有运气。
结构:
Main
Git
lib
files.rb
base.rb
test
test1.rb
我在base.rb上面有第一个代码块,我在那里做了所有'要求' 当我尝试运行测试。我得到了LoadError。
'请',解释第一个和第二个代码块也给我一个解决方案
答案 0 :(得分:0)
为清楚起见,而不是
__LIB_DIR__ = File.expand_path(File.join(File.dirname(__FILE__), ".."))
使用
__LIB_DIR__ = File.expand_path('..', File.dirname(__FILE__))
这是做什么的?
unless $LOAD_PATH.include?(__LIB_DIR__) $LOAD_PATH.unshift(__LIB_DIR__) end
考虑一下:
ary = %w[a b]
ary # => ["a", "b"]
ary.unshift('c')
ary # => ["c", "a", "b"]
我尝试运行它,我得到了LoadError。我也试过require_relative没有运气。
这可能有很多原因,但不幸的是,你并没有分享它出现的代码。 require
和require_relative
都用于加载代码,但在传递的参数中使用不同的语法。我们需要知道您尝试加载的内容,以及与调用脚本相关的文件层次结构的位置。
也许其中一个或相关问题会有所帮助: