我正在通过测试第一个ruby教程(https://github.com/alexch/learn_ruby/blob/master/index.html),并且我在运行rake测试时遇到问题。这是我的错误信息:
"耙子中止了! Gem :: LoadError:找不到' rspec' (〜> 2) - 确实找到了:[rspec-3.0.0]"
我认为这需要先前版本的rspec而不是我已经安装的版本,所以我已经卸载并重新安装了3个以前版本的rspec,但后来我遇到了gem not found错误。我已经成功地在另一台计算机上完成了这些教程的一部分,但我似乎无法找到适合这台Windows 7机器的设置。我尝试过这么多不同的命令和更新都无济于事。我已经查看了这里提出的类似问题,但这些解决方案都没有对我有用。
以下是gem list
的输出:
*** 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)
有人可以帮忙吗?
答案 0 :(得分:3)
该教程有一个Gemfile,指定它需要rspec"> = 2.0"这可能不包括rspec 3.要安装所有需要宝石的正确版本,请在与Gemfile相同的文件夹中尝试这些命令:
gem install bundler
bundle
编辑:实际上,我认为该教程的Gemfile已经破解,并没有正确指定他们想要使用的rspec版本。他们应该有像"〜> 2.0"而不是"> = 2.0"我认为。尝试使用gem uninstall rspec
卸载rspec,然后执行gem install rspec -v 2.14.1
。您可以打开一个github问题,要求他们更新教程以考虑新的RSpec 3.x,它与2.x不兼容。
答案 1 :(得分:0)
您需要更改Rakefile中的rspec版本而不是gemfile,gem' rspec','〜> 2.0'无论你想使用什么版本。