Ruby on rails 雷克流产了!Gem::LoadError:找不到rspec';x';但确实发现';y';

Ruby on rails 雷克流产了!Gem::LoadError:找不到rspec';x';但确实发现';y';,ruby-on-rails,ruby,rspec,rake,test-first,Ruby On Rails,Ruby,Rspec,Rake,Test First,我正在努力完成testfirst ruby教程(),但在运行rake测试时遇到了问题。这是我收到的错误消息: “雷克! Gem::LoadError:找不到'rspec'(~>2)-确实找到了:[rspec-3.0.0]“ 我假设这需要一个比我安装的版本更早的rspec版本,所以我卸载并重新安装了3个rspec的早期版本,但是我遇到了gem not found错误。我还成功地在另一台计算机上完成了这些教程的一部分,但我似乎无法为这台Windows7计算机找到正确的设置。我尝试了这么多不同的命令和

我正在努力完成testfirst ruby教程(),但在运行rake测试时遇到了问题。这是我收到的错误消息:

“雷克! Gem::LoadError:找不到'rspec'(~>2)-确实找到了:[rspec-3.0.0]“

我假设这需要一个比我安装的版本更早的rspec版本,所以我卸载并重新安装了3个rspec的早期版本,但是我遇到了gem not found错误。我还成功地在另一台计算机上完成了这些教程的一部分,但我似乎无法为这台Windows7计算机找到正确的设置。我尝试了这么多不同的命令和更新,但都没有用。我看过这里提出的类似问题,但没有一个解决方案对我有效

以下是
gem列表的输出:

*** LOCAL GEMS ***

actionmailer (3.2.18)
actionpack (4.1.1, 3.2.18)
actionview (4.1.1)
activemodel (3.2.18)
activerecord (3.2.18)
activerecord-sqlserver-adapter (3.2.12)
activeresource (3.2.18)
activesupport (4.1.1, 3.2.18)
arel (3.0.3)
bigdecimal (1.1.0)
builder (3.2.2, 3.0.4)
bundler (1.6.5, 1.6.2)
coffee-rails (4.0.1)
coffee-script (2.2.0)
coffee-script-source (1.7.0)
diff-lcs (1.2.5)
erubis (2.7.0)
execjs (2.0.2)
hike (1.2.3)
i18n (0.6.9)
io-console (0.3)
journey (1.0.4)
jquery-rails (3.1.0)
json (1.8.1, 1.5.5)
mail (2.5.4)
mime-types (1.25.1)
minitest (5.3.3, 2.5.1)
multi_json (1.10.0)
pg (0.17.1 x86-mingw32)
polyglot (0.3.4)
rack (1.5.2, 1.4.5)
rack-cache (1.2)
rack-ssl (1.3.4)
rack-test (0.6.2)
rails (3.2.18)
railties (4.1.1, 3.2.18)
rake (10.3.2, 10.3.1, 0.9.2.2)
rb-readline (0.5.1)
rdoc (3.9.5)
rspec (3.0.0)
rspec-core (3.0.3)
rspec-expectations (3.0.3)
rspec-mocks (3.0.3)
rspec-support (3.0.3)
rubygems-update (2.4.1)
rubyzip (1.1.3)
sass (3.2.19)
sass-rails (4.0.3)
sprockets (2.11.0, 2.2.2)
sprockets-rails (2.1.3)
sqlite3 (1.3.9 x86-mingw32)
sqlite3-ruby (1.3.3)
thor (0.19.1)
thread_safe (0.3.3)
tilt (1.4.1)
tiny_tds (0.6.1 x86-mingw32)
treetop (1.4.15)
tzinfo (1.1.0, 0.3.39)

有人能帮忙吗

该教程有一个GEM文件,指定它需要rspec“>=2.0”,这可能不包括rspec 3。要安装所有所需gems的正确版本,请在Gemfile所在的文件夹中尝试以下命令:

gem install bundler
bundle

编辑:实际上,我认为教程的GEM文件已损坏,没有正确指定他们想要使用的rspec版本。他们应该有像“~>2.0”这样的东西,而不是我认为的“>=2.0”。尝试使用
gem卸载rspec
卸载rspec,然后执行
gem安装rspec-v2.14.1
。您可以打开一个github问题,要求他们更新教程以说明新的RSpec 3.x,它与2.x不兼容。

您需要将Rakefile中的RSpec版本而不是gem文件从gem'RSpec',“~>2.0”更改为您想要使用的任何版本。

谢谢,但是我试过了,又犯了同样的错误。请运行
gem list
并将它的输出添加到您的问题中,这样我们就可以看到您有哪些gem了。另外,运行包时,
包的输出是什么?它应该告诉您它安装了什么rspec版本。捆绑包的输出:
使用rake 10.3.2使用diff lcs 1.2.5使用rspec支持3.0.3使用rspec核心3.0.3使用rspec期望3.0.3使用rspec模拟3.0.3使用rspec 3.0.0使用捆绑包1.6.5您的捆绑包已经完成了!使用
bundle show[gemname]`查看捆绑gem的安装位置。`Done,现在我得到了这个错误:
C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/rspec-core-3.0.3/lib/rspec/core/configuration.rb:1057:in
load”:无法加载这样的文件--C:/Users/DB/Documents/learn\ruby-master/B/Documents/learn\ruby-master/00\u hello(LoadError)`,这是一个不同的错误,我认为你原来的问题需要回答。你可以在线搜索关于LoadErrors的信息,基本上Ruby找不到这个文件,所以你需要确保它在那里,或者按照你需要的方式修复它。只要看看所有的文件,找出RSpec为什么要找那个文件,然后修复它。此外,这看起来仍然是错误的,因为rspec3.0.3出现在错误消息中,而实际上您应该使用rspec2.x。如我在回答中所说,卸载rspec3.x。