0
我爲我的rails 2.3.17應用程序使用jruby(1.7.3或1.7.9),delayed_job(1.8.4),守護進程(1.1.9)gems 。delayed_job gem - NotImplementedError:fork在此平臺上不可用
我試圖使用命令啓動延遲作業服務器: 1. JRuby的腳本/ delayed_job的開始
錯誤:
RuntimeError: ObjectSpace is disabled; each_object will only work with Class, pass -X+O to enable
each_object at org/jruby/RubyObjectSpace.java:173
daemonize at /home/user/projects/new_central_repo/mml/mml_services/vendor/gems/delayed_job-1.8.4/lib/delayed/command.rb:39
(root) at script/delayed_job:5
- 要解決這個錯誤,我通過「-X + O」的選項&運行以下命令: JRuby的-X + O腳本/ delayed_job的開始
氏s已經解決了「ObjectSpace is disabled」的錯誤,但是我在本地獲得了錯誤。 錯誤:
NotImplementedError: fork is not available on this platform
fork at org/jruby/RubyKernel.java:1880
safefork at /home/user/.rvm/gems/[email protected]/gems/daemons-1.1.9/lib/daemons/daemonize.rb:11
call_as_daemon at /home/user/.rvm/gems/[email protected]/gems/daemons-1.1.9/lib/daemons/daemonize.rb:43
start_proc at /home/user/.rvm/gems/[email protected]/gems/daemons-1.1.9/lib/daemons/application.rb:259
start at /home/user/.rvm/gems/[email protected]/gems/daemons-1.1.9/lib/daemons/application.rb:296
run at /home/user/.rvm/gems/[email protected]/gems/daemons-1.1.9/lib/daemons/controller.rb:70
run_proc at /home/user/.rvm/gems/[email protected]/gems/daemons-1.1.9/lib/daemons.rb:197
call at org/jruby/RubyProc.java:290
call at org/jruby/RubyProc.java:224
catch_exceptions at /home/user/.rvm/gems/[email protected]/gems/daemons-1.1.9/lib/daemons/cmdline.rb:109
run_proc at /home/user/.rvm/gems/[email protected]/gems/daemons-1.1.9/lib/daemons.rb:196
daemonize at /home/user/projects/new_central_repo/mml/mml_services/vendor/gems/delayed_job-1.8.4/lib/delayed/command.rb:45
times at org/jruby/RubyFixnum.java:280
daemonize at /home/user/projects/new_central_repo/mml/mml_services/vendor/gems/delayed_job-1.8.4/lib/delayed/command.rb:43
(root) at script/delayed_job:5
任何人都可以幫我解決這個錯誤。
本地我能夠使用「jrake jobs:work」命令啓動服務器,但我不是使用「jrake jobs:work」而不是「jruby script/delayed_job start」。
謝謝。
謝謝理查德。 但是,如果我使用「jrake jobs:work」而不是「jruby script/delayed_job start」,它會啓動delayed_job過程,並且還會在delayed_jobs表中運行我的後臺作業或條目,並且非常好。 因此,對於我的jruby應用程序,可以使用「jrake jobs:work」而不是「jruby script/delayed_job start」,因爲我想在我的rails上使用delayed_job gem(2.3.17)應用程序 – Pratik
所以其他人有使用耙子來取得delayed_job工作jruby雖然我沒有親自 - 我發現了一個替代解決方案我自己...這裏是一個相關的如此問:https://stackoverflow.com/questions/17676154/issue-with-script-delayed -Job啓動,commad –