Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.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 war部署到Tomcat6后出现RackInitializationException异常_Ruby On Rails_Tomcat_Jruby_War - Fatal编程技术网

Ruby on rails 将Jruby war部署到Tomcat6后出现RackInitializationException异常

Ruby on rails 将Jruby war部署到Tomcat6后出现RackInitializationException异常,ruby-on-rails,tomcat,jruby,war,Ruby On Rails,Tomcat,Jruby,War,我正在使用: jruby 1.7.2 (ruby-1.8.7p370) Rails 2.0.2 jruby-jars-1.7.2 jruby-rack-1.1.13.1 rake (10.0.3, 0.8.1) Rake 10.0.3 was installed by Warbler 当我访问应用程序时,出现以下错误: org.jruby.rack.RackInitializationException: uninitialized constant Rack::Builder from

我正在使用:

jruby 1.7.2 (ruby-1.8.7p370)
Rails 2.0.2
jruby-jars-1.7.2
jruby-rack-1.1.13.1 
rake (10.0.3, 0.8.1) Rake 10.0.3 was installed by Warbler
当我访问应用程序时,出现以下错误:

org.jruby.rack.RackInitializationException: uninitialized constant Rack::Builder

from /usr/share/tomcat6/webapps/app/WEB-INF/gems/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:266:in `load_missing_constant'
from /usr/share/tomcat6/webapps/app/WEB-INF/gems/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:453:in `const_missing'
from null:1:in `(root)'

我该如何解决这个问题呢?

这是一个非常古老的rails版本!:-)如果可能的话,你应该把它送到2.3分公司。我很怀疑在jruby 1.7.1中运行它不会有问题,因为它是以ruby 1.9代码运行的。您可能希望首先将它拨回上一个1.6版本,因为默认情况下它将在ruby 1.8.7中运行

此外,您可能过于雄心勃勃地使用较新的tomcat。您应该查看特立尼达创业板,因为它可以更好地支持您的遗留应用程序


然而,问题的要点是您使用的ruby版本需要机架。我怀疑你在这么旧的rails应用程序中有这样的功能。直到2点2分才恢复

谢谢你的建议。我已经安装了rack gem,但仍然收到错误。你认为有工作吗?或者我真的需要升级rails吗?你可能只需要在根文件夹中创建一个vanilla config.ru文件。尽管考虑到上周rails bug的严重性,我还是会升级到2.3最新版本:)如果你能将它升级到2.3.8,那么你可以在发布时迭代修复这些不推荐。