7

我是一名 RoR 初学者,我从 RoR 教程开始学习它。实际上我在本章(http://ruby.railstutorial.org/chapters/static-pages#top)并尝试安装rspec。但是每次当我尝试使用“rails g rspec:install”时,我都会收到以下错误消息:

C:\Sites\rails\rails_projects\sample_appp>rails g rspec:install
C:/Sites/rails/rails_projects/sample_appp/config/application.rb:8:in `require':
no such file to load -- sprockets/railtie (LoadError)
        from C:/Sites/rails/rails_projects/sample_appp/config/application.rb:8:i
n `<top (required)>'
        from C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/railties-3.0.9
/lib/rails/commands.rb:15:in `require'
        from C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/railties-3.0.9
/lib/rails/commands.rb:15:in `<top (required)>'
        from script/rails:6:in `require'
        from script/rails:6:in `<main>'

有人有什么想法可以帮助我吗?我已经尝试在 application.rb 中将其注释掉,或者在 gemfile 中明确提及它。但我仍然收到此错误消息。

如果有人可以帮助我,那就太好了。顺便提一句。我的操作系统是 Windows XP,我使用的是 Ruby 版本 1.9.2.p290 和 Rails 版本 3.1.0.rc6。

4

3 回答 3

15

这是我所做的:

该网站上的 gemfile 显然有点错误,我正在使用这个:

source 'http://rubygems.org'

gem "rails", "~> 3.1.0"
gem 'sqlite3', '1.3.3'

group :development do
gem 'rspec-rails', '2.6.1'
end

group :test do
gem 'rspec-rails', '2.6.1'
gem 'webrat', '0.7.1'
end

在您的终端类型中

$ bundle update
$ bundle install

然后再试一次命令

rails generate rspec:install

祝你好运!:)

于 2011-09-05T23:55:56.957 回答
1

你是如何安装 rspec 的?你做了“gem install”还是把它放在你的Gemfile中?如果它仅在您的 Gemfile 中,请尝试将“bundle exec”放在您的命令前面,如下所示:

bundle exec rails g rspec:install

我知道当我运行规范时我必须使用 bundle exec,所以你可能也需要它来用于 init 脚本(我不记得我什么时候做的,但我有完全相同的 ruby​​/rails 版本)

于 2011-08-25T16:03:37.340 回答
0

好像您已经使用更高版本(rails 3.1)的 rails gem 创建了您的项目。确保您使用的是只有 rails 3.0.9 gems 的 gemset,然后执行 rails new 来创建您的项目。这将确保您的 application.rb 中不会出现 sprockets/railtie 行

于 2011-12-07T00:07:15.417 回答