莺不包括的Act​​iveSupport语言文件(Warbler not including Act

2019-10-18 23:10发布

我使用Rails 3.1.3,1.7.6的JRuby和莺1.3.8

注意:这是没有使用JRuby 1.6.7,当发生-但我们最近尝试更新JRuby的版本,那就是当这个问题开始。

我们使用莺我们对Rails应用程序的红宝石打包成一个WAR文件。 这个过程的预编译所有的资产和一切工作正常(似乎做工精细,命令执行成功)

然后,我们部署我们的软件WAR文件(使用JRuby的一个环境 - 1.7.6 - 并使用码头作为Web服务器)

当服务器试图解包和部署WAR文件,我们得到以下错误:

org.jruby.rack.RackInitializationException: No such file or directory - /home/production/var/tmp/Jetty_0_0_0_0_2525_ui.4.1.4.war____.ed5d4m/webapp/WEB-INF/jar:file:/home/production/var/tmp/Jetty_0_0_0_0_2525_ui.4.1.4.war____.ed5d4m/webapp/WEB-INF/lib/gems.jar!/gems/activesupport-3.1.3/lib/active_support/locale/en.yml
from org/jruby/RubyFile.java:838:in `stat'

我在解压WAR目录检查,去了gems.jar文件,打开包装,并检查所有文件- 3.1.3的ActiveSupport文件en.yml在那里。 对文件的权限,因为我希望他们是(即似乎没有什么不同的比它使用JRuby 1.6.7以前)

编辑有JRuby的1.7.6和1.3.8莺之间的错误- https://github.com/jruby/warbler/issues/197遇到那之后,我尝试使用Warber 1.4.0.beta2 -它修正了warbler- JRuby的错误,但仅修复让我远远不够再次接收缺少语言环境/ en.yml文件。

有什么建议么? 谢谢!

Answer 1:

我试图重现你的问题,但无法。 我安装了Rails 3.1.3,莺1.4.0.beta2,和JRuby 1.7.6。 创建一个新的Rails应用程序后,我创建了一个控制器/视图,预编译我的资产,然后通过运行创造了战争warble 。 然后我甩我战成码头9.0.6(v20130930)。

我可以导航到位于在WAR文件的应用程序和大量的WEB-INF/gems/gems/activesupport-3.1.3 (在所有253)。

你有可能会改变你如何建立你的战争定制莺文件? 也许你可以将其删除,并尝试“股票”莺CONFIGS。



Answer 2:

我会尝试莺1.4.0.beta2只是为了看它是否是固定的



文章来源: Warbler not including ActiveSupport locale files