Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Jruby:无法在Jruby on rails应用程序中启动webrick服务器_Ruby On Rails_Ruby On Rails 4_Jruby_Jrubyonrails - Fatal编程技术网

Ruby on rails Jruby:无法在Jruby on rails应用程序中启动webrick服务器

Ruby on rails Jruby:无法在Jruby on rails应用程序中启动webrick服务器,ruby-on-rails,ruby-on-rails-4,jruby,jrubyonrails,Ruby On Rails,Ruby On Rails 4,Jruby,Jrubyonrails,我已经在我的ubuntu机器上安装了jruby 1.7.16和rails 4.1.8。我有现有的jruby应用程序,我想使用webbrick服务器运行它,但我无法运行它。每当我使用命令rails启动webrick服务器时,我都会发现下面的错误 successful load of fcntl Bundler::GemRequireError: There was an error while trying to load the gem 'activerecord-jdbc-adapter'.

我已经在我的ubuntu机器上安装了jruby 1.7.16和rails 4.1.8。我有现有的jruby应用程序,我想使用webbrick服务器运行它,但我无法运行它。每当我使用命令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/jruby-1.7.16@analytics-core/gems/bundler-1.13.1/lib/bundler/runtime.rb:91:in `require'
org/jruby/RubyArray.java:1613:in `each'
/home/administrator/.rvm/gems/jruby-1.7.16@analytics-core/gems/bundler-1.13.1/lib/bundler/runtime.rb:86:in `require'
org/jruby/RubyArray.java:1613:in `each'
/home/administrator/.rvm/gems/jruby-1.7.16@analytics-core/gems/bundler-1.13.1/lib/bundler/runtime.rb:75:in `require'
/home/administrator/.rvm/gems/jruby-1.7.16@analytics-core/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/jruby-1.7.16@analytics-core/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/jruby-1.7.16@analytics-core/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:79:in `server'
/home/administrator/.rvm/gems/jruby-1.7.16@analytics-core/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:76:in `server'
/home/administrator/.rvm/gems/jruby-1.7.16@analytics-core/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/jruby-1.7.16@analytics-core/gems/bundler-1.13.1/lib/bundler/runtime.rb:95
          each at org/jruby/RubyArray.java:1613
       require at /home/administrator/.rvm/gems/jruby-1.7.16@analytics-core/gems/bundler-1.13.1/lib/bundler/runtime.rb:86
          each at org/jruby/RubyArray.java:1613
       require at /home/administrator/.rvm/gems/jruby-1.7.16@analytics-core/gems/bundler-1.13.1/lib/bundler/runtime.rb:75
       require at /home/administrator/.rvm/gems/jruby-1.7.16@analytics-core/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/jruby-1.7.16@analytics-core/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/jruby-1.7.16@analytics-core/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:79
        server at /home/administrator/.rvm/gems/jruby-1.7.16@analytics-core/gems/railties-4.1.8/lib/rails/commands/commands_tasks.rb:76
  run_command! at /home/administrator/.rvm/gems/jruby-1.7.16@analytics-core/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应用程序中启动服务器


谢谢,

Bundler 1.13.1中有一个问题导致了这一点-基本上他们移植了
require
方法,而在JRuby 1.7中,一个可见性错误使得
内核::require
私有化

你可以做的三件事:

  • 更改Kernel.require可见性为public(在加载绑定器后)
  • 降级至捆绑机1.12
  • 升级到JRuby 1.7.26(尚未发布)

  • 卡里斯。。你救了我的命…谢谢你。。。。爱你,亲爱的……)