2013-04-29 123 views
5

我只用了三天的时间把我的头撞在墙上试图弄清楚为什么一个简单的'rake'不能通过我的spec文件。无法让RSpec工作 - 'require':无法加载这样的文件

如果这发生在你身上:没有任何文件夹路径的空间!认真。事实上,你从这里命名的任何东西都没有空间。

这里是我的控制台输出:

(在/Users/*****/Desktop/Learning Ruby/learn_ruby

$ rake 
/Users/*******/Desktop/Learning Ruby/learn_ruby/00_hello/hello_spec.rb:116: 
    in `require': cannot load such file -- hello (LoadError) 
+0

会发生什么? – 2013-04-29 18:22:40

+0

这是一个Rails应用程序吗?独立的红宝石应用程序? – 2013-04-29 18:30:00

+0

这是一个红宝石应用程序。 当我运行rspec的它打印出更多的文件位置(即不在,我在出于某种原因,文件位置),并执行以下操作: “负荷“:无法加载此类文件” – tomgalpin 2013-04-29 18:42:43

回答

5

失败是由于线路引起的:require "hello"

这行告诉红宝石,它需要搜索的负载路径对于名为hello.rb的文件。但是,当它查看加载路径时,它无法找到该文件。您应该删除该行并直接在spec文件中定义您的代码,或者创建一个hello.rb文件。

较新版本的RSpec(2.11+我相信)自动将子目录lib添加到加载路径。根据您的Rakefile看来您还正在加载当前实验目录和子目录solution

我猜你希望你的解决方案在solution/hello.rb

+0

我会给那一枪。我很感激。 – tomgalpin 2013-04-29 18:51:11

+0

我用本教程中包含的Rakefile代码添加了我的控制台输出的详细信息。 – tomgalpin 2013-04-29 20:35:34

+0

好的,这有帮助。看起来它找到了你的spec文件,但找不到相关的代码。你能粘贴你的规格文件吗?你的'hello.rb'文件存储在哪里? – 2013-04-29 21:35:17

3

什么工作对我来说是改变需要声明的require_relative

我使用Windows和一个IDE,当你只是运行`rspec`

相关问题