ruby-on-rails - Spork 无法启动,因为没有要加载的此类文件 -- spork (LoadError)

标签 ruby-on-rails ruby testing rspec spork

每当我运行 spork 时,我都会得到

$ spork
Using RSpec
Preloading Rails environment
Loading Spork.prefork block...
no such file to load -- spork (LoadError)
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `block in require'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `block in load_dependency'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:640:in `new_constants_in'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `load_dependency'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
/Users/darth/projects/checkin/spec/spec_helper.rb:2:in `<top (required)>'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:234:in `load'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:234:in `block in load'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `block in load_dependency'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:640:in `new_constants_in'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `load_dependency'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:234:in `load'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/spork-0.9.0.rc9/lib/spork/test_framework.rb:138:in `block (2 levels) in preload'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/spork-0.9.0.rc9/lib/spork/app_framework/rails.rb:8:in `preload'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/spork-0.9.0.rc9/lib/spork/test_framework.rb:134:in `block in preload'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/spork-0.9.0.rc9/lib/spork.rb:62:in `exec_prefork'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/spork-0.9.0.rc9/lib/spork/test_framework.rb:120:in `preload'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/spork-0.9.0.rc9/lib/spork/run_strategy/forking.rb:25:in `preload'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/spork-0.9.0.rc9/lib/spork/runner.rb:74:in `run'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/spork-0.9.0.rc9/lib/spork/runner.rb:10:in `run'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/spork-0.9.0.rc9/bin/spork:10:in `<top (required)>'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/bin/spork:19:in `load'
/Users/darth/.rvm/gems/ruby-1.9.2-p290/bin/spork:19:in `<main>'

我记得几天前已经让 spork 工作了,但我正在弄乱我的 Gemfile 以让它在 Heroku 上工作,但我现在似乎无法让它工作。这是我的 Gemfile

source 'http://rubygems.org'

gem 'rack', '1.3.3'
gem 'rails', '3.1.0'
gem 'json'
gem 'jquery-rails'
gem 'pg', :group => :production

group :assets do
  gem 'sass-rails', "  ~> 3.1.0"
  gem 'coffee-rails', "~> 3.1.0"
  gem 'uglifier'
end

gem 'nifty-generators', :group => :development

group :development, :test do
  gem 'sqlite3'
  gem 'rspec-rails'
  group :darwin do
    gem 'rb-fsevent', :require => false
    gem 'rb-inotify', :require => false
    gem 'rb-fchange', :require => false
  end
  gem 'spork', '> 0.9.0.rc'
  gem 'guard-rspec', :require => false
  gem 'guard-spork', :require => false
  gem 'growl'
  gem 'cucumber-rails'  
  gem 'database_cleaner'
  gem 'webrat'
  gem 'capybara'
  gem 'factory_girl_rails'  
end

当我尝试在另一个项目中启动 spork 时,它似乎工作正常,所以问题一定出在配置中。

bundle exec spork 给我

/Users/darth/.rvm/gems/ruby-1.9.2-p290/gems/bundler-
1.0.21/lib/bundler/rubygems_integration.rb:143:in `block in replace_gem': 
     spork is not part of the bundle. Add it to Gemfile. (Gem::LoadError)
     from /Users/darth/.rvm/gems/ruby-1.9.2-p290/bin/spork:18:in `<main>'

最佳答案

我还没有在 3.1.0 中尝试过,所以它可能不起作用,但在你的 spork prefork 中..尝试添加以下内容:

Spork.prefork do
...
   #Add this following line to get spork working with rails 3
   ActiveSupport::Dependencies.clear
...
end

关于ruby-on-rails - Spork 无法启动,因为没有要加载的此类文件 -- spork (LoadError),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7867176/

相关文章:

php - 测试网站的负载、压力、可扩展性

正则表达式 : "Any word" pattern

testing - 什么是错误猜测测试用例?

ruby-on-rails - 尝试获取 Google Analytics 数据时出现 403 Insufficient permissions 错误

ruby-on-rails - 如何从字符串中删除 HTML 标记

ruby-on-rails - rspec 测试时处理环境源常量的最佳方法?

javascript - 单击 Rails 中的提交按钮时,如何在重定向到下一页之前显示模式?

ruby-on-rails - 为什么 will_paginate 不显示第一页之后的项目? (第 1 页之后为空)

ruby-on-rails - rails 4 Assets 管道图像子目录

ruby - 不能使用 has_secure_password,password_digest 错误