Ruby on rails 为什么我不能在Jetty上运行的JRuby on Rails应用程序中设置ActionController相对URL根目录?

Ruby on rails 为什么我不能在Jetty上运行的JRuby on Rails应用程序中设置ActionController相对URL根目录?,ruby-on-rails,jetty,jruby,Ruby On Rails,Jetty,Jruby,我正在开发一个RubyonRails应用程序,但我正在Jetty中使用JRuby在/app的上下文路径下运行它 我使用的是Rails 3.0.5、JRuby 1.6.0和Jetty 6.1.22 当我部署到Jetty时,静态资源的相对URL是/stylesheets/*和/javascripts/*,而不是/app/stylesheets/*和/app/javascripts/*并且因此破坏了样式和客户端功能 我尝试将config.action\u controller.relative\u u

我正在开发一个RubyonRails应用程序,但我正在Jetty中使用JRuby在/app的上下文路径下运行它

我使用的是Rails 3.0.5、JRuby 1.6.0和Jetty 6.1.22

当我部署到Jetty时,静态资源的相对URL是/stylesheets/*和/javascripts/*,而不是/app/stylesheets/*和/app/javascripts/*并且因此破坏了样式和客户端功能

我尝试将config.action\u controller.relative\u url\u root='/app'添加到config/environments/production.rb,但Jetty无法初始化该应用程序

来自Jetty的堆栈跟踪如下所示:

2011-03-23 16:19:54.062:警告:/app:错误: 应用程序初始化失败 org.jruby.rack.RackInitializationException: 无法创建共享应用程序 例子 位于org.jruby.rack.SharedRackApplicationFactory.initSharedRackApplicationFactory.java:39 位于org.jruby.rack.RackServletContextListener.contextInitializedRackServletContextListener.java:44 位于org.mortbay.jetty.handler.ContextHandler.StartContextHandler.java:548 位于org.mortbay.jetty.servlet.Context.startContextContext.java:136 位于org.mortbay.jetty.webapp.WebAppContext.startContextWebAppContext.java:1250 位于org.mortbay.jetty.handler.ContextHandler.doStartContextHandler.java:517 网址:org.mortbay.jetty.webapp.WebAppContext.doStartWebAppContext.java:467 位于org.mortbay.component.AbstractLifeCycle.startAbstractLifeCycle.java:50 位于org.mortbay.jetty.handler.HandlerCollection.doStartHandlerCollection.java:152 位于org.mortbay.jetty.handler.ContextHandlerCollection.doStartContextHandlerCollection.java:156 位于org.mortbay.component.AbstractLifeCycle.startAbstractLifeCycle.java:50 位于org.mortbay.jetty.handler.HandlerCollection.doStartHandlerCollection.java:152 位于org.mortbay.component.AbstractLifeCycle.startAbstractLifeCycle.java:50 位于org.mortbay.jetty.handler.HandlerWrapper.doStartHandlerWrapper.java:130 位于org.mortbay.jetty.Server.doStartServer.java:224 位于org.mortbay.component.AbstractLifeCycle.startAbstractLifeCycle.java:50 位于org.mortbay.xml.XmlConfiguration.mainXmlConfiguration.java:985 在sun.reflect.NativeMethodAccessorImpl.invoke0Native 方法 位于sun.reflect.NativeMethodAccessorImpl.invokeUnknown 来源 在sun.reflect.DelegatingMethodAccessorImpl.invokeUnknown处 来源 位于java.lang.reflect.Method.invokeUnknown 来源 位于org.mortbay.start.Main.invokeMainMain.java:194 位于org.mortbay.start.Main.startMain.java:534 位于org.mortbay.start.Main.startMain.java:441 位于org.mortbay.start.Main.mainMain.java:119

初始化应用程序时,如何配置此设置而不让Jetty爆炸?

config.action\u controller.relative\u url\u根在Rails 3中被删除。我在我的网站上有一篇关于此的帖子:。虽然它是为Apache编写的,但您应该能够将其重写到Jetty。

只需添加config.action\u controller.relative\u url\u root就可以阻止应用程序初始化?