首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spork无法加载这样的文件吗?

Spork无法加载这样的文件吗?
EN

Stack Overflow用户
提问于 2012-06-12 08:40:56
回答 6查看 4.5K关注 0票数 5

我有一个猪肉宝石的问题。每次我运行spork命令时,我都会收到这个长错误:

代码语言:javascript
复制
evan@TheBeast-Computer:~/rails_projects/sample_app$ spork
Using RSpec
Preloading Rails environment
Loading Spork.prefork block...
cannot load such file -- /home/evan/rails_projects/sample_app/spec_helper (LoadError)
/home/evan/rails_projects/sample_app/spec/spec_helper.rb:57:in `require_relative'
/home/evan/rails_projects/sample_app/spec/spec_helper.rb:57:in `block in <top (required)>'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/lib/spork.rb:24:in `prefork'
/home/evan/rails_projects/sample_app/spec/spec_helper.rb:6:in `<top (required)>'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.5/lib/active_support/dependencies.rb:245:in `load'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.5/lib/active_support/dependencies.rb:245:in `block in load'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.5/lib/active_support/dependencies.rb:236:in `load_dependency'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.5/lib/active_support/dependencies.rb:245:in `load'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/lib/spork/test_framework.rb:138:in `block (2 levels) in preload'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/lib/spork/app_framework/rails.rb:8:in `preload'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/lib/spork/test_framework.rb:134:in `block in preload'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/lib/spork.rb:62:in `exec_prefork'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/lib/spork/test_framework.rb:120:in `preload'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/lib/spork/run_strategy/forking.rb:25:in `preload'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/lib/spork/runner.rb:74:in `run'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/lib/spork/runner.rb:10:in `run'
/home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/bin/spork:10:in `<top (required)>'
/home/evan/.rvm/gems/ruby-1.9.3-p194/bin/spork:23:in `load'
/home/evan/.rvm/gems/ruby-1.9.3-p194/bin/spork:23:in `<main>'

这是我的Gemfile:

代码语言:javascript
复制
source 'https://rubygems.org'

gem 'rails', '3.2.5'

gem 'sqlite3'

group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'

group :development, :test do
  gem 'rspec-rails',    ">= 2.0.1"
end

group :test do
  gem 'rspec-rails', '>= 2.0.1'
  gem 'spork', '>= 0.8.4'
end

我不知所措,不知道该怎么做,也不知道如何描述我的处境。但我在Ruby on Rails 3教程书中看到的结果显示:

代码语言:javascript
复制
$ spork
Using RSpec
Loading Spork.prefork block...
Spork is ready and listening on 8989!
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-06-14 03:39:24

只是在系统更新后遇到了同样的问题。这是由于缺少文件的读取权限。

一个简单的chmod +r对我有效:

代码语言:javascript
复制
sudo chmod +r /home/evan/.rvm/gems/ruby-1.9.3-p194/gems/spork-0.9.2/bin/spork

编辑

当我更新到Rails 3.2.9 & Ruby 1.9.3-p327时,我又遇到了这个问题。不幸的是,这一次不是来自acces right问题,而是来自两次更新之间演变的gem (应该是完全透明的)。因此,如果你遇到这个问题,你也应该检查哪些文件丢失了,如果你没有访问权限的问题,并正确地升级相应的gem。

票数 10
EN

Stack Overflow用户

发布于 2012-06-12 21:47:23

从外观上看,你在'spec‘文件夹中有'spec_helper.rb’文件,spork试图加载这个文件,在这个文件的第57行有一个块,里面有一条require_relative "../spec_helper"语句,它指向根项目文件夹中的'spec_helper.rb‘文件,ruby’无法加载这样的文件‘,因为它丢失了。

票数 1
EN

Stack Overflow用户

发布于 2012-06-14 08:06:25

有相同的问题,但能够进入spec_help.rb文件并保存它。一旦我这样做了,它就开始工作了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10989237

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档