我正在使用 Ruby 1.8,并且我有要调用的脚本,但它位于父文件夹中。下面是结构:
maindir/
neededscript.rb
subdir/
subdir2/
myscript.rb
我如何neededscript.rb
从内部要求myscript.rb
?
在 Ruby >=1.9 中,您可以使用该require_relative
方法
require_relative 通过允许您加载与包含 require_relative 语句的文件相关的文件来补充内置方法 require。
require_relative '../../neededscript.rb'
您还可以通过在执行 require 之前将这些行添加到 myscript.rb 来将路径添加到 ruby libs 路径
binpath = File.dirname( __FILE__ )
$:.unshift File.expand_path( File.join( binpath, ".." ) )
这就是我所做的:
File.expand_path("../../neededsript.rb",File.dirname(__FILE__))