2

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

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

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

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

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

有没有办法告诉莺离开 lib/tasks/install.sh 可执行权限?

4

1 回答 1

1

作为记录(任何登陆这里的人):这对于当前的 zip 文件是不可能的,至少在 Java 的内置 zip 支持下是不可能的。

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

于 2013-07-26T20:19:19.100 回答