【问题标题】:`require': cannot load such file -- hello (LoadError)`require': 无法加载这样的文件 -- 你好 (LoadError)
【发布时间】:2014-07-26 04:07:09
【问题描述】:

我正在尝试针对 hello 文件中包含的 hello 方法运行测试:

ruby hello_spec.rb 

返回:

/usr/local/Cellar/ruby/2.1.2_2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- hello (LoadError)
from /usr/local/Cellar/ruby/2.1.2_2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from hello_spec.rb:116:in `<main>'

文件包含在同一目录中。我已经安装了 RSpec 和(我相信)必要的 gem。其他人似乎也有类似的问题,但没有一个解决方案对我有用。

我正在运行 Ruby 2.1.2 我是 Ruby 新手,并且(显然)正在努力正确配置环境。任何帮助深表感谢。

注意:我没有编写任何测试代码。我实际上只制作了 hello.rb 文件。

【问题讨论】:

  • 试试“load”命令而不是“require”?加载“hello_spec.rb”只需要在 ruby​​ 中加载一次文件。包含在“加载”红宝石源文件中。
  • 来自 REPL?我得到了同样的东西。
  • tr 加载 './hello_spec.rb'
  • 您的 spec_helper.rb 文件配置正确吗?
  • 还是不行,谢谢你的尝试。

标签: ruby rspec gem


【解决方案1】:

在您的hello_spec.rb 中将require 'hello' 更改为require_relative 'hello'。默认情况下,当前目录不包含在默认的 ruby​​ 加载路径中。

或者,或者,将当前目录添加到 ruby​​ 加载路径:

$:.unshift File.dirname(__FILE__)

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 2015-03-25
    • 1970-01-01
    • 2023-01-12
    • 1970-01-01
    • 2017-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-01
    相关资源
    最近更新 更多