ruby - 使用 warble 将 Rails 3 应用程序部署到 Tomcat

标签 ruby ruby-on-rails-3 tomcat jruby tomcat7

我使用 warble 成功创建了我的 war 文件。我正在尝试在 tomcat 中部署我的 Rails 3 应用程序。

我正在使用 Ruby 1.9.2 并且 jRuby 1.6.7 支持它。

我正在使用 Windows 并将环境变量 JRUBY_OPTS 设置为 --1.9。

如果我转到控制台 (cmd) 并输入 jruby -v 这就是答案:jruby 1.6.7 (ruby-1.9.2-p312).....

部署后,当我执行应用程序时由于语法问题而失败。分析日志文件我可以看到以下内容:

系统

jruby 1.6.7 (ruby-1.8.7-p357) (2012-02-22 3e82bc8) (Java HotSpot(TM) Client VM 1.6.0_23) [Windows XP-x86-java]

为什么使用 ruby​​ 1.8.7?这导致了我的错误! 我尝试将 SET RAILS_OPTS=--1.9.2 添加到我的 tomcat 启动脚本中,但它具有相同的行为。

注意:如果我使用 jruby -S rails S 启动服务器,它运行良好,它使用 1.9.2 启动 webrick。但是,如果我生成 WAR,它会使用 1.8.7 执行。

有什么想法吗?

最佳答案

如果你运行:

warble config

这会创建一个配置文件,config/warble.rb。打开此文件,并取消注释以下行:

# config.webxml.jruby.compat.version = "1.9"

然后用 warble 重新包装你的 war 。

关于ruby - 使用 warble 将 Rails 3 应用程序部署到 Tomcat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9535359/

相关文章:

ruby - 使用 Paperclip gem,如何根据方向修改应用于上传的样式尺寸?

ruby-on-rails - 设计 - 快速通知

Java JAX-RS CORS/Tomcat 冲突 : javax. servlet.ServletException

apache - window机器上的Tomcat集群

ruby - sublime text 看不懂gets.chomp

javascript - 如何格式化 Ruby 数组以用作 Highcharts 中的数据

ruby-on-rails-3 - 如何在 Ruby on Rails 3 中允许从右到左的语言

ruby-on-rails - 自定义错误页面 - Ruby on Rails

tomcat - 如何在Tomcat中设置javax.servlet.context.tempdir?

ruby-on-rails - 如何使用 elasticsearch-rails gem 过滤查询?