无法启动 SOLR 服务器(Ruby on Rails)

发布于 2024-10-17 06:15:06 字数 3861 浏览 1 评论 0原文

我在 Rails3 应用程序中使用 sunspot_rails 和 sunspot gems,并按照步骤在 https://github.com 上安装 sunspot /outoftime/sunspot,我无法让我的太阳黑子服务器运行。

当我进入我的目录,运行bundler,然后运行rake sunspot:solr:start时,我收到以下错误

Emil@Emil-PC /cygdrive/c/work/pilarhq
$ rake sunspot:solr:start
(in /cygdrive/c/work/pilarhq)
DEPRECATION WARNING: You are using the old router DSL which will be removed in R
ails 3.1. Please check how to update your routes file at: http://www.engineyard.
com/blog/2010/the-lowdown-on-routes-in-rails-3/. (called from /cygdrive/c/work/p
ilarhq/config/routes.rb:1)
      2 [main] ruby 4824 C:\cygwin\bin\ruby.exe: *** fatal error - unable to rem
ap C:\cygwin\bin\cyglber-2-3-0.dll to same address as parent: 0x360000 != 0x3800
00
Stack trace:
Frame     Function  Args
023F9538  6102749B  (023F9538, 00000000, 00000000, 00000000)
023F9828  6102749B  (61177B80, 00008000, 00000000, 61179977)
023FA858  61004AFB  (611A136C, 6123FF54, 00360000, 00380000)
End of stack trace
      2 [main] ruby 4500 C:\cygwin\bin\ruby.exe: *** fatal error - unable to rem
ap C:\cygwin\bin\cyglber-2-3-0.dll to same address as parent: 0x360000 != 0x3E00
00
Stack trace:
Frame     Function  Args
023FB0F8  6102749B  (023FB0F8, 00000000, 00000000, 00000000)
023FB3E8  6102749B  (61177B80, 00008000, 00000000, 61179977)
023FC418  61004AFB  (611A136C, 6123FF54, 00360000, 003E0000)
End of stack trace
      2 [main] ruby 4612 fork: child 4824 - died waiting for dll loading, errno
11
      4 [main] ruby 580 fork: child 4500 - died waiting for dll loading, errno 1
1
/usr/lib/ruby/gems/1.8/gems/sunspot-1.2.0/lib/sunspot/server.rb:42:in `fork': Re
source temporarily unavailable - fork(2) (rake aborted!Errno::EAGAIN)

Resource temporarily unavailable - fork(2)      from /usr/lib/ruby/gems/1.8/gems
/sunspot-1.2.0/lib/sunspot/server.rb:42:in `start'
$
in `fork'
        from /usr/lib/ruby/gems/1.8/gems/sunspot-1.2.0/lib/sunspot/server.rb:41:
in `start'
        from /usr/lib/ruby/gems/1.8/gems/sunspot_rails-1.2.0/lib/sunspot/rails/s
erver.rb:10:in `start'
        from /usr/lib/ruby/gems/1.8/gems/sunspot_rails-1.2.0/lib/sunspot/rails/t
asks.rb:8
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `call'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `execute'

        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in `each'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in `execute'

        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:597:in `invoke_w
ith_call_chain'
        from /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_w
ith_call_chain'ygdrive/c/work/pilarhq
$       from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:583:in `invoke'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2051:in `invoke_
task'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `top_lev
el'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `each'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `top_lev
el'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in `standar
d_exception_handling'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2023:in `top_lev
el'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2001:in `run'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in `standar
d_exception_handling'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1998:in `run'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/bin/rake:31
        from /usr/bin/rake:19:in `load'
        from /usr/bin/rake:19

(我在Windows计算机上使用Cygwin...如果有帮助的话)

I'm using sunspot_rails and sunspot gems in my Rails3 application and following the steps to installing sunspot on https://github.com/outoftime/sunspot, I cannot get my sunspot server to run.

When I enter my directory, run bundler and then run rake sunspot:solr:start I get the following error

Emil@Emil-PC /cygdrive/c/work/pilarhq
$ rake sunspot:solr:start
(in /cygdrive/c/work/pilarhq)
DEPRECATION WARNING: You are using the old router DSL which will be removed in R
ails 3.1. Please check how to update your routes file at: http://www.engineyard.
com/blog/2010/the-lowdown-on-routes-in-rails-3/. (called from /cygdrive/c/work/p
ilarhq/config/routes.rb:1)
      2 [main] ruby 4824 C:\cygwin\bin\ruby.exe: *** fatal error - unable to rem
ap C:\cygwin\bin\cyglber-2-3-0.dll to same address as parent: 0x360000 != 0x3800
00
Stack trace:
Frame     Function  Args
023F9538  6102749B  (023F9538, 00000000, 00000000, 00000000)
023F9828  6102749B  (61177B80, 00008000, 00000000, 61179977)
023FA858  61004AFB  (611A136C, 6123FF54, 00360000, 00380000)
End of stack trace
      2 [main] ruby 4500 C:\cygwin\bin\ruby.exe: *** fatal error - unable to rem
ap C:\cygwin\bin\cyglber-2-3-0.dll to same address as parent: 0x360000 != 0x3E00
00
Stack trace:
Frame     Function  Args
023FB0F8  6102749B  (023FB0F8, 00000000, 00000000, 00000000)
023FB3E8  6102749B  (61177B80, 00008000, 00000000, 61179977)
023FC418  61004AFB  (611A136C, 6123FF54, 00360000, 003E0000)
End of stack trace
      2 [main] ruby 4612 fork: child 4824 - died waiting for dll loading, errno
11
      4 [main] ruby 580 fork: child 4500 - died waiting for dll loading, errno 1
1
/usr/lib/ruby/gems/1.8/gems/sunspot-1.2.0/lib/sunspot/server.rb:42:in `fork': Re
source temporarily unavailable - fork(2) (rake aborted!Errno::EAGAIN)

Resource temporarily unavailable - fork(2)      from /usr/lib/ruby/gems/1.8/gems
/sunspot-1.2.0/lib/sunspot/server.rb:42:in `start'
$
in `fork'
        from /usr/lib/ruby/gems/1.8/gems/sunspot-1.2.0/lib/sunspot/server.rb:41:
in `start'
        from /usr/lib/ruby/gems/1.8/gems/sunspot_rails-1.2.0/lib/sunspot/rails/s
erver.rb:10:in `start'
        from /usr/lib/ruby/gems/1.8/gems/sunspot_rails-1.2.0/lib/sunspot/rails/t
asks.rb:8
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `call'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `execute'

        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in `each'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in `execute'

        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:597:in `invoke_w
ith_call_chain'
        from /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_w
ith_call_chain'ygdrive/c/work/pilarhq
$       from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:583:in `invoke'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2051:in `invoke_
task'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `top_lev
el'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `each'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `top_lev
el'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in `standar
d_exception_handling'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2023:in `top_lev
el'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2001:in `run'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in `standar
d_exception_handling'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1998:in `run'
        from /usr/lib/ruby/gems/1.8/gems/rake-0.8.7/bin/rake:31
        from /usr/bin/rake:19:in `load'
        from /usr/bin/rake:19

(I'm using Cygwin on a Windows machine...if that helps)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

忆梦 2024-10-24 06:15:06

我发现 http://www.garethhunt .com/2008/02/11/cygwin-died-waiting-for-dll-loading/ 并必须执行以下操作:

  1. 关闭所有 cygwin 窗口,
  2. 从 Run 调用 c:\cygwin\usr\bin\ash ( Win-R)
  3. 从其中调用 rebaseall

I have found http://www.garethhunt.com/2008/02/11/cygwin-died-waiting-for-dll-loading/ and had to do the following:

  1. close all cygwin windows
  2. call c:\cygwin\usr\bin\ash from Run (Win-R)
  3. call rebaseall from therein
夜唯美灬不弃 2024-10-24 06:15:06

我遇到了类似的情况(Windows 7 企业版,使用 cygwin 和 Rails),发现简单的 rebaseall 方法不起作用。简而言之,问题在于 rebaseall 不一定知道它必须修复的所有 .dll 和 .so。解决方案是编写您自己的列表,并使用 -T 选项对该列表运行 rebaseall。对我来说,最终起作用的过程是:

  1. 在 cygwin shell 中: find /bin /lib /usr -iname '*.so' > /tmp/to_rebase.lst
  2. 在 cygwin shell 中: find /bin /lib /usr -iname '*.dll' >>> /tmp/to_rebase.lst
  3. 退出所有 cygwin shell 并停止
  4. 以管理员身份运行的所有 cygwin 进程 C:\cygwin\bin\ash.exe
  5. /bin/rebaseall -T /tmp/to_rebase.lst
  6. 退出灰
  7. 重启机器

I ran into something similar (Windows 7 enterprise, using cygwin and rails) and found that the simple rebaseall approach was not working. In brief, the problem is that rebaseall doesn’t necessarily know all the .dll’s and .so’s it has to fix. The solution is to compose your own list and run rebaseall against that list using the -T option. For me, the process that finally worked was:

  1. in a cygwin shell: find /bin /lib /usr -iname '*.so' > /tmp/to_rebase.lst
  2. in a cygwin shell: find /bin /lib /usr -iname '*.dll' >> /tmp/to_rebase.lst
  3. quit all cygwin shells and stop all cygwin processes
  4. run as Administrator C:\cygwin\bin\ash.exe
  5. /bin/rebaseall -T /tmp/to_rebase.lst
  6. exit ash
  7. restart machine
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文