如何从当前文件夹中获取文件?
我有一个名为sql_parser.rb
的文件,其中包含一个类。我想把它包含在同一个文件夹中的另一个文件中,所以我使用:
require 'sql_parser'
当我从那个文件夹运行时,它失败了:
LoadError: no such file to load -- sql_parser
我尝试在这个文件所在的文件夹中使用IRB,并从那里请求它,但遇到了同样的问题。
发布于 2011-12-15 04:13:32
在Ruby1.9.x中,您可以使用require_relative
方法。参见http://www.ruby-doc.org/core-1.9.3/Kernel.html#method-i-require_relative。
发布于 2011-12-15 06:53:52
使用
$:.unshift File.join(File.dirname(__FILE__))
以确保您获得的路径是基于脚本所在的位置,而不是执行程序的位置。否则,您将丢弃通过从加载路径中删除"."
而获得的安全性优势。
(是的,问题的标题谈到要求在运行脚本的目录中有一个文件,但问题的正文提到所需的文件与脚本在同一个文件夹中)
发布于 2014-01-05 12:32:08
还有..。
require "./myRubyFile“#注意,我们从myRubyFile.rb中排除了.rb
https://stackoverflow.com/questions/8510981
复制相似问题