JRuby:Rails:Warbler - 如何在war文件中分发可执行脚本

时间:2012-03-20 18:12:25

标签: chmod jrubyonrails warbler

我有一个JRuby / Rails应用程序,我使用Warbler gem部署到Tomcat。

在JRuby应用程序中,我在$ RUBY_ROOT / lib / tasks中有一堆脚本,用于安装脚本,cron作业,Resque等。

当我开发/构建文件时,我将这些脚本的权限设置为可执行文件

$lib/tasks> chmod a+x install.sh

但是,当我将war文件分发给Tomcat并将其启动时,展开目录下的文件(... WEB-INF / lib / tasks / install.sh)显示install.sh没有可执行文件特权。

有没有办法告诉warbler将lib / tasks / install.sh保留为可执行权限?

1 个答案:

答案 0 :(得分:1)

记录(任何人登陆): 对于目前至少没有Java内置zip支持的zip文件,这是不可能的。

我也认为这在某种程度上是对“.war”文件的“滥用” - 它本来是一个可部署的应用程序单元,尽管最近能够“独立”运行它。迁移java -jar my.war -S rake db:migrate从.war设置cron作业听起来有点太多但是如果你真的想要它你现在可以(使用rake任务:)