首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Ruby:如何“请求”当前工作目录中的文件?

Ruby:如何“请求”当前工作目录中的文件?
EN

Stack Overflow用户
提问于 2011-12-15 04:10:28
回答 5查看 14K关注 0票数 19

如何从当前文件夹中获取文件?

我有一个名为sql_parser.rb的文件,其中包含一个类。我想把它包含在同一个文件夹中的另一个文件中,所以我使用:

代码语言:javascript
复制
require 'sql_parser'

当我从那个文件夹运行时,它失败了:

代码语言:javascript
复制
LoadError: no such file to load -- sql_parser

我尝试在这个文件所在的文件夹中使用IRB,并从那里请求它,但遇到了同样的问题。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 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

票数 32
EN

Stack Overflow用户

发布于 2011-12-15 06:53:52

使用

代码语言:javascript
复制
$:.unshift File.join(File.dirname(__FILE__))

以确保您获得的路径是基于脚本所在的位置,而不是执行程序的位置。否则,您将丢弃通过从加载路径中删除"."而获得的安全性优势。

(是的,问题的标题谈到要求在运行脚本的目录中有一个文件,但问题的正文提到所需的文件与脚本在同一个文件夹中)

票数 8
EN

Stack Overflow用户

发布于 2014-01-05 12:32:08

还有..。

require "./myRubyFile“#注意,我们从myRubyFile.rb中排除了.rb

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8510981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档