【问题标题】:Running jRuby + Rails inside of Tomcat在 Tomcat 中运行 jRuby + Rails
【发布时间】:2012-07-23 14:50:41
【问题描述】:

我目前正在使用一个平台,其中多个 Web 应用程序必须在框架集中相互交互。这组 Web 应用程序和框架集托管在 Tomcat 上。

现在我们正在开发的应用程序是使用 jRuby 和 Rails 开发的。无论如何我可以在 Tomcat 中运行我的开发环境,就像运行 jRuby -S Rails Server 命令一样,这样我就可以有效地调试?

我发现的唯一方法是使用 warble 生成战争,然后然后修改爆炸的战争,这看起来真的很hacky。有什么想法吗?

编辑:我认为我最好的选择是生成战争,消化它,使用符号链接并找出我需要从战争生成过程中复制哪些 gems/libs。这是我能想到的最好方法。

【问题讨论】:

    标签: ruby-on-rails debugging tomcat jruby


    【解决方案1】:

    探索的一个选项:将一个小 servlet 部署到 Tomcat 并返回

    HTTP/1.1 301 Moved Permanently
    Location: http://localhost:3000
    

    【讨论】:

    • 不幸的是,不同的 Web 应用程序之间共享了大量 JavaScript(它们位于同一服务器上的主要原因),因此重定向不起作用。
    【解决方案2】:

    到目前为止,我发现的最佳解决方案是使用 Tomcat 设置反向代理并将其指向 Rails 开发服务器。这允许它按预期在客户端运行,同时仍然给我调试控制权。

    当我有机会进行更多测试时,我会编辑我的答案以包含更多信息。

    【讨论】:

      【解决方案3】:

      转到您部署war文件的tomcat中的webapps文件夹,然后在扩展的war文件中找到web.xml文件

      这个文件的路径一般是/var/lib/tomcat7/webapps/your-project-here/WEB-INF/web.xml,你应该在这个文件里面找到

      改变这是一种方法。

        <context-param>
          <param-name>rails.env</param-name>
          <param-value>production</param-value>
        </context-param>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-06-20
        • 2018-06-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-26
        • 1970-01-01
        相关资源
        最近更新 更多