【问题标题】:Undefined local variable or method `__File__' for main:Object (NameError)main:Object (NameError) 的未定义局部变量或方法“__File__”
【发布时间】:2015-04-24 01:51:17
【问题描述】:

我是 Ruby 新手,正在完成有关 Lynda 的在线课程。

在我的文本编辑器中,我有:

APP_ROOT = File.dirname(__File__)

$:.unshift ( File.join(APP_ROOT, 'lib))
require 'guide

当我尝试运行它时,我得到了这个错误:

init.rb:4:in `<main>': undefined local variable or method `__File__' for main:Object (NameError)

【问题讨论】:

  • 'File' 应该是一个文件名,就像:File.dirname("/home/gumby/work/ruby.rb") #=> "/home/gumby/work"跨度>

标签: ruby macos irb nameerror


【解决方案1】:

应该是:

File.dirname(__FILE__)

这是获取执行文件目录的常用ruby习语。

【讨论】:

  • 糟糕!我没有意识到使用下划线已将 File.dirname(FILE) 更改为 FILE 为粗体。我确实放了你发布的内容并且收到了我在上面发布的错误,但是你写的是 FILE
  • 使__FILE__ 大写。
  • 啊,想通了!谢谢你的帮助。我已将文件复制到文件夹中。剩下的副本还在我的桌面上。
猜你喜欢
  • 2016-02-14
  • 2016-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多