要求相对路径

Requiring with relative path

编程语言:

ruby

我的目录结构如下:

-program (dir)
--const.rb
--libs (dir)
---someClass.rb

我想 include/require const.rbsomeClass.rb.

我试过了:

(1)

$:.unshift File.expand_path(File.dirname.expand_path(__FILE__)))
require "../const"

(2)

$:.unshift File.expand_path(File.dirname.expand_path(__FILE__)))
require "./const"

(3)

require_relative "../const"

(4)

$:.unshift File.expand_path(File.dirname.expand_path(__FILE__)))
require_relative "../const"    (also with single quotes)

他们 return 一个错误:

`require': cannot load such file ... (LoadError)

有什么想法吗?

require 不做相对路径扩展。在传递给它之前,你必须扩展路径。

require File.expand_path("../const", __dir__)