mobdown 2009-05-25 16:52
浏览 290
已采纳

关于ferret和acts_as_ferret的问题!

环境:windowsXP + ruby 1.86 + rails 2.2.2

要实现全文搜索功能!

安装ferret:gem install ferret -v=0.11.5 --platform mswin32

安装acts_as_ferret:将svn://projects.jkraemer.net/acts_as_ferret/tags/stable/acts_as_ferret里的文件导出到vendor\plugins\acts_as_ferret里。

结果无法启动Mongrel了:

[code="ruby"]
=> Booting Mongrel (use 'script/server webrick' to force WEBrick)

=> Rails 2.2.2 application starting on http://0.0.0.0:3000

=> Call with -d to detach

=> Ctrl-C to shutdown server

** Starting Mongrel listening at 0.0.0.0:3000

** Starting Rails with development environment...

Exiting

F:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- ferret_ext (MissingSourceFile)

    from F:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'

    from F:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.2.2/lib/active_support/dependencies.rb:153:in `require'

    from F:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.2.2/lib/active_support/dependencies.rb:521:in `new_constants_in'

    from F:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.2.2/lib/active_support/dependencies.rb:153:in `require'

    from F:/ruby/lib/ruby/site_ruby/1.8/ferret.rb:25

    from F:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'

    from F:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'

    from F:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.2.2/lib/active_support/dependencies.rb:153:in `require'

     ... 47 levels...

    from F:/ruby/lib/ruby/gems/1.8/gems/rails-2.2.2/lib/commands/server.rb:49

    from F:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'

    from F:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'

    from script/server:3

[/code]

然后把vendor\plugins\下的acts_as_ferret整个删除就能正常启动mongrel了。

我直接用gem install acts_as_ferret来安装,然后在environment.rb 里添加require 'acts_as_ferret'后,还是无法启动mongrel.

  • 写回答

1条回答 默认 最新

  • horace_lee 2009-05-26 09:52
    关注

    好吧,这的确是一个十分诡异的错误,而且,似乎是win下才会有的。

    原因是ferret_ext找不到,而你又确实安装了,说明这个ferret_ext.so(就是C编译完后以便ruby调用的库),不在ruby可以找到的lab路径。那么,照这个逻辑可以


    [quote] C:\ruby\lib\ruby\gems\1.8\gems\ferret-0.11.5-x86-mswin32\ext [/quote]
    下的 ferret_ext.so 文件拷贝到
    如下目录
    [quote]C:\ruby\lib\ruby\gems\1.8\gems\ferret-0.11.5-x86-mswin32\lib[/quote]

    应该就可以用,试试

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。