2016-09-15 88 views
2

我在我的ubuntu機器上安裝了jruby 1.7.16和rails 4.1.8。我現有的jruby應用程序,我想運行使用webbrick服務器,但我無法運行它。每當我開始webrick服務器使用命令軌s我越來越低於錯誤。Jruby:無法在jruby on rails應用程序中啓動webrick服務器

successful load of fcntl 
Bundler::GemRequireError: There was an error while trying to load the gem 'activerecord-jdbc-adapter'. 
Gem Load Error is: private method `require' called for Kernel:Module 
Backtrace for gem load error is: 
/home/administrator/.rvm/gems/[email protected]/gems/bundler-1.13.1/lib/bundler/runtime.rb:91:in `require' 
org/jruby/RubyArray.java:1613:in `each' 
/home/administrator/.rvm/gems/[email protected]/gems/bundler-1.13.1/lib/bundler/runtime.rb:86:in `require' 
org/jruby/RubyArray.java:1613:in `each' 
/home/administrator/.rvm/gems/[email protected]/gems/bundler-1.13.1/lib/bundler/runtime.rb:75:in `require' 
/home/administrator/.rvm/gems/[email protected]/gems/bundler-1.13.1/lib/bundler.rb:106:in `require' 
/home/administrator/Desktop/vitality_iq_project/analytics-core/config/application.rb:19:in `(root)' 
org/jruby/RubyKernel.java:1065:in `require' 
/home/administrator/.rvm/gems/[email protected]/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:1:in `(root)' 
org/jruby/RubyKernel.java:1880:in `tap' 
/home/administrator/.rvm/gems/[email protected]/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:79:in `server' 
/home/administrator/.rvm/gems/[email protected]/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:76:in `server' 
/home/administrator/.rvm/gems/[email protected]/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:40:in `run_command!' 
org/jruby/RubyKernel.java:1065:in `require' 
script/rails:6:in `(root)' 
Bundler Error Backtrace: 

     require at /home/administrator/.rvm/gems/[email protected]/gems/bundler-1.13.1/lib/bundler/runtime.rb:95 
      each at org/jruby/RubyArray.java:1613 
     require at /home/administrator/.rvm/gems/[email protected]/gems/bundler-1.13.1/lib/bundler/runtime.rb:86 
      each at org/jruby/RubyArray.java:1613 
     require at /home/administrator/.rvm/gems/[email protected]/gems/bundler-1.13.1/lib/bundler/runtime.rb:75 
     require at /home/administrator/.rvm/gems/[email protected]/gems/bundler-1.13.1/lib/bundler.rb:106 
     (root) at /home/administrator/Desktop/vitality_iq_project/analytics-core/config/application.rb:19 
     require at org/jruby/RubyKernel.java:1065 
     (root) at /home/administrator/.rvm/gems/[email protected]/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:1 
      tap at org/jruby/RubyKernel.java:1880 
     server at /home/administrator/.rvm/gems/[email protected]/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:79 
     server at /home/administrator/.rvm/gems/[email protected]/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:76 
    run_command! at /home/administrator/.rvm/gems/[email protected]/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:40 
     require at org/jruby/RubyKernel.java:1065 
     (root) at script/rails:6 

下面是我的JRuby版本信息

jruby -v 
jruby 1.7.16 (1.9.3p392) 2014-09-25 575b395 on Java HotSpot(TM) 64-Bit Server VM 1.8.0_101-b13 +jit [linux-amd64] 

和我的rails版本是4.1.8。請幫助我使用rails在Jruby應用程序中啓動服務器。

感謝,

回答

1

有帶捆紮機1.13.1的一個問題,是造成這一點 - 他們基本上是移植require方法,而在JRuby的1.7可視性缺陷從而使得Kernel::require私人。

3件事你可以做:

  1. 變化Kernel.require知名度是公衆(加載捆紮機後)
  2. 降級到捆紮機1.12
  3. 升級到JRuby的1.7.26(尚未發佈)
+0

Kares ..你救了我的命........................ 1000多虧了你....愛你親愛的.... :) –