0

我在用:

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)'

我该如何解决这个问题?

4

1 回答 1

1

那是一个非常旧的rails版本!:-) 如果可能的话,你应该把它带到 2.3 分支。我非常怀疑你在 jruby 1.7.1 中运行它不会有问题,因为它作为 ruby​​ 1.9 代码运行。您可能需要先将其拨回上一个 1.6 版本,因为默认情况下它将在 ruby​​ 1.8.7 中运行。

此外,您可能过于雄心勃勃地使用较新的 tomcat。您应该查看 trinidad gem,因为它可能会在遗留应用程序上更好地支持您。

但是,问题的要点是您使用的是需要机架的 ruby​​ 版本。我怀疑你在这么旧的 Rails 应用程序中拥有它。IIRC 直到 2.2-ish 才出现。

于 2013-01-16T17:20:12.987 回答