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