Spork的配置错误?:`require':没有要加载的文件

时间:2011-04-04 22:43:00

标签: ruby-on-rails ruby windows spork

我是Ruby&的新手Rails,我目前正致力于Rails Tutorial。具体来说,我目前正在处理本书所需的部分setup Spork

不幸的是,当我进入

spork

我得到了

Using RSpec
  -- Rinda Ring Server listening for connections...

  -- Starting to fill pool...
     Wait until at least one slave is provided before running tests...
  ** CTRL+BREAK to stop Spork and kill all ruby slave processes **
Spork is ready and listening on 8989!
<internal:lib/rubygems/custom_require>:29:in `require': no such file to load --
magazine_slave (LoadError)
        from <internal:lib/rubygems/custom_require>:29:in `require'
        from magazine_slave_provider.rb:5:in `<main>'

最后4行重复。

好的,很简单,它似乎是lib / ruby​​gems / custom_require中的一个问题。

项目lib目录不包含rubygems子目录,所以我假设它在ruby目录中;但事实并非如此。 rubygems也是某种虚拟目录吗?

$ dir *custom_require*.* /s/b

Yeilds

C:\Ruby192\lib\ruby\1.9.1\rubygems\custom_require.rb
C:\Ruby192\lib\ruby\gems\1.9.1\doc\rubygems-1.6.2\rdoc\lib\rubygems\custom_require_rb.html
C:\Ruby192\lib\ruby\gems\1.9.1\gems\rubygems-update-1.6.2\lib\rubygems\custom_require.rb
C:\Ruby192\lib\ruby\site_ruby\1.9.1\rubygems\custom_require.rb

所以html文件显然不是它,以下文件中的第29行都有注释。

C:\Ruby192\lib\ruby\gems\1.9.1\gems\rubygems-update-1.6.2\lib\rubygems\custom_require.rb
C:\Ruby192\lib\ruby\site_ruby\1.9.1\rubygems\custom_require.rb

第29行有代码
C:\Ruby192\lib\ruby\1.9.1\rubygems\custom_require.rb

但是当我注释掉代码时,我仍然遇到了错误,当我在29之前删除了对行的注释时,错误行号没有改变。

任何人都可以告诉我这可能是什么?

1 个答案:

答案 0 :(得分:2)

好的,这就是我为解决问题所做的工作。

我对这个解决方案并不十分兴奋,并且觉得它留下了许多未解决的问题,但它可能会给未来有类似问题的人提供一些暗示。

  1. 我最初在RubyInstaller之前安装了BitNami Ruby,所以我认为可能有某些配置至少部分使用Bitnami而不是RubyInstaller。所以我卸载了BitInami的RubyInstaller。然后我从教程中重新安装了RubyInstaller并重新安装了所有gem安装等。

  2. 不幸的是,虽然我不再遇到上述错误,但我得到了另一个错误。

    magazine_slave_provider.rb:5:in 'require': no such file to load -- magazine_slave (LoadError) from magazine_slave_provider.rb:5:in '<main>'

    至少我能找到这个文件&amp;我通过将require 'magazine_slave'替换为require File.dirname(__FILE__) + '/magazine_slave'

  3. 解决了这个问题

    这似乎解决了我的问题,虽然看起来我只是掩盖了一个更大问题的sympton。当没有其他人似乎遇到这个问题时,这似乎不太可能是实际问题。