-
Notifications
You must be signed in to change notification settings - Fork 207
Closed
Description
Hello
This issue occured after upgrading to new version of jruby
Stack:
jruby 9.2.0.0
rails 4.2.10
java 1.8
tomcat 8.5.31
warbler 2.0.5
War file builds fine but when deployed to tomcat it throws an error:
org.jruby.rack.RackInitializationException: no such file to load -- bundler/shared_helpers
from org/jruby/RubyKernel.java:970:in `require'
from uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:59:in `require'
from file:/usr/local/tomcat-data/webapps/secure/META-INF/init.rb:25:in `<eval>'
from org/jruby/RubyKernel.java:1037:in `eval'
from uri:classloader:/jruby/rack/booter.rb:256:in `block in load_settings_from_init_rb'
from org/jruby/RubyArray.java:1801:in `each'
from uri:classloader:/jruby/rack/booter.rb:243:in `load_settings_from_init_rb'
from uri:classloader:/jruby/rack/booter.rb:99:in `boot!'
from uri:classloader:/jruby/rack/rails_booter.rb:26:in `boot!'
from uri:classloader:/jruby/rack/boot/rails.rb:10:in `<main>'
from org/jruby/RubyKernel.java:994:in `load'
from <script>:1:in `<main>'
at org.jruby.rack.RackInitializationException.wrap(RackInitializationException.java:29)
at org.jruby.rack.RackApplicationFactoryDecorator.init(RackApplicationFactoryDecorator.java:104)
at org.jruby.rack.RackServletContextListener.contextInitialized(RackServletContextListener.java:50)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.jruby.exceptions.LoadError: (LoadError) no such file to load -- bundler/shared_helpers
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:970)
at RUBY.require(uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:59)
at RUBY.<eval>(file:/usr/local/tomcat-data/webapps/secure/META-INF/init.rb:25)
at org.jruby.RubyKernel.eval(org/jruby/RubyKernel.java:1037)
at RUBY.block in load_settings_from_init_rb(uri:classloader:/jruby/rack/booter.rb:256)
at org.jruby.RubyArray.each(org/jruby/RubyArray.java:1801)
at RUBY.load_settings_from_init_rb(uri:classloader:/jruby/rack/booter.rb:243)
at RUBY.boot!(uri:classloader:/jruby/rack/booter.rb:99)
at RUBY.boot!(uri:classloader:/jruby/rack/rails_booter.rb:26)
at RUBY.<main>(uri:classloader:/jruby/rack/boot/rails.rb:10)
at org.jruby.RubyKernel.load(org/jruby/RubyKernel.java:994)
at RUBY.<main>(<script>:1)
To my understanding warbler should load the jruby environment prior to calling this script and have all the paths initialized.
I tried using load and specifying path directly to that file, which loaded it fine but then threw a different require error from within loaded file
Another thing I've noticed: The RubyGems does not have the corect Gem.path.
Gem.path are:
["/usr/share/tomcat6/.gem/jruby/2.5.0", "uri:classloader:/META-INF/jruby.home/lib/ruby/gems/shared"]
Should be:
["/usr/local/tomcat-data/webapps/secure/WEB-INF/gems", "uri:classloader:/META-INF/jruby.home/lib/ruby/gems/shared"]
viking
Metadata
Metadata
Assignees
Labels
No labels