Warbler希望您在创建WAR时指定一个RAILS_ENV。然后将其放入生成的WAR的web.xml中。
但是,如果您可以创建一个从环境中学习其RAILS_ENV的wAR,您就可以创建一个可用于试运行或生产的WAR -换句话说,一个更高级的管理制度,其中可以测试WAR,然后在不更改的情况下进行部署。
发布于 2011-11-19 04:00:28
JRuby-Rack已经设置为在将内容放入web.xml之前读取RAILS_ENV,所以这部分是金色的。您唯一需要击败的就是这个合并到war文件内的META-INF/init.rb中的rails.erb模板:
ENV['RAILS_ENV'] = '<%= config.webxml.rails.env %>'目前还没有一个很好的方法来做到这一点,但您可以覆盖config/warble.rb顶部的Warbler::Jar#add_init_file,如下所示来删除Rails模板:
class Warbler::Jar
alias_method :orig_add_init_file, :add_init_file
def add_init_file(config)
config.init_contents.delete("#{config.warbler_templates}/rails.erb") if config.init_contents
orig_add_init_file(config)
end
endhttps://stackoverflow.com/questions/8185419
复制相似问题