Ruby: 要求导入失败 - 需要设置根目录
Ruby: Require Fails To Import - Need To Set Root Directory
请原谅我对 Ruby 缺乏经验,但我无法 运行 具有以下结构的第三方项目中的脚本:
˅ alpha
˅ lib
˅ bravo
golf.rb
˅ charlie
˃ delta
˅ echo
foxtrot.rb
require "charlie/delta/echo/__init"
__init.rb
require "bravo/golf"
我的命令行 运行 脚本“foxtrot.rb”应该是什么,因为以下会产生错误:
ruby "c:\arby\lib\bravo\charlie\delta\echo\foxtrot.rb"
"'require': cannot load such file -- charlie/delta/echo/__init (LoadError)"
如果这是 __init.rb 中的代码,它将不起作用。
require "charlie/delta/echo/__init"
__init.rb
require "bravo/golf"
require
告诉 ruby 将代码加载到 ruby 文件中。为了使其正常工作,需要正确组织文件。您也可以使用 require_relative
但它们仍然需要来自调用它们的文件的相对路径。参见 What is the difference between require_relative and require in Ruby?
请原谅我对 Ruby 缺乏经验,但我无法 运行 具有以下结构的第三方项目中的脚本:
˅ alpha
˅ lib
˅ bravo
golf.rb
˅ charlie
˃ delta
˅ echo
foxtrot.rb
require "charlie/delta/echo/__init"
__init.rb
require "bravo/golf"
我的命令行 运行 脚本“foxtrot.rb”应该是什么,因为以下会产生错误:
ruby "c:\arby\lib\bravo\charlie\delta\echo\foxtrot.rb"
"'require': cannot load such file -- charlie/delta/echo/__init (LoadError)"
如果这是 __init.rb 中的代码,它将不起作用。
require "charlie/delta/echo/__init"
__init.rb
require "bravo/golf"
require
告诉 ruby 将代码加载到 ruby 文件中。为了使其正常工作,需要正确组织文件。您也可以使用 require_relative
但它们仍然需要来自调用它们的文件的相对路径。参见 What is the difference between require_relative and require in Ruby?