【问题标题】:generating WAR file for ruby on rails application为 ruby​​ on rails 应用程序生成 WAR 文件
【发布时间】:2014-02-27 11:53:37
【问题描述】:

我正在使用 Warbler 为我的 ruby​​ on rails 应用程序生成一个 WAR 文件。我没有在我的应用程序中使用任何特殊的东西,我只运行 "warble war" 命令。

在 WAR 生成中,我收到了这 2 个警告

warning: skipping minitest
warning: skipping json

在eclipse中导入WAR后,项目无法构建,提示

Archive for required library: '/WebContent/WEB-INF/lib/gems-gems-warbler-1.4.1-spec-sample_war-some.jar'cannot be read or is not a valid ZIP file

我尝试遵循https://github.com/jruby/warbler/issues/199 的一些解决方法,但没有任何线索。我正在使用 Rails 4.0.2 版和莺 1.4.1 版。我是部署新手,所以如果有人可以帮助我,我将不胜感激。谢谢

【问题讨论】:

    标签: ruby-on-rails ruby tomcat war warbler


    【解决方案1】:

    排除违规文件的更好方法:warble 配置。

    使用

    生成配置
    warble config
    

    然后取消注释以下行以修复它:

    config.gem_excludes = [/^(test|spec)\//]
    

    【讨论】:

    • 赞成。这应该被标记为正确。感谢您指出如何在没有猴子修补莺的情况下做到这一点!
    【解决方案2】:

    让我警告你,这是一个完整的屠夫工作,我之所以使用它,是因为我很困惑为什么我也会遇到同样的错误,并且在尝试部署我的 jruby/rails 应用程序时 Tomcat 死了。这是我所做的:

    $ ls -l /usr/local/opt/tomcat/libexec/webapps/workspace/WEB-INF/lib/*sample*
    

    您会在那里看到一些莺样品罐。 gems-gems-warbler-1.4.1-spec-sample_war-some.jar 的大小为 0。这是问题所在,但我认为我真的不需要任何样品罐,谢谢。所以:

    $ bundle show warbler
    /PATH/.rvm/gems/jruby-1.7.10@rails4/gems/warbler-1.4.1
    
    $ rm -rf /PATH/.rvm/gems/jruby-1.7.10@rails4/gems/warbler-1.4.1/spec/*sample*
    $ bundle exec warble war
    

    部署到 Tomcat,上下文开始就好了。不太理想,可能有一个“正确”的解决方案。这让我继续前进,尽管如此。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-27
      • 1970-01-01
      • 1970-01-01
      • 2011-05-15
      • 2017-12-09
      相关资源
      最近更新 更多