Playframework 2.0 重头戏2.x:如何使用可分发包部署脚本

Playframework 2.0 重头戏2.x:如何使用可分发包部署脚本,playframework-2.0,sbt,Playframework 2.0,Sbt,我正在Play 2.1中创建一个项目,并计划使用Play dist将该项目作为一个独立的包分发。但是,我需要一些额外的脚本,这些脚本可以被服务器访问,并且大多数情况下可以利用项目的库模型。我需要的脚本示例是一个任务,它将作为cron作业运行,以从外部设备收集数据 在Rails或我习惯的任何其他web框架中,我会创建一个脚本目录,并将类似的内容放在那里。然而,我对Java和这个框架还相当陌生,所以我不知道这个约定是什么,如果有的话,而且很难不分发未编译的源代码 查看上的Play文档,我看到最终结果

我正在Play 2.1中创建一个项目,并计划使用Play dist将该项目作为一个独立的包分发。但是,我需要一些额外的脚本,这些脚本可以被服务器访问,并且大多数情况下可以利用项目的库模型。我需要的脚本示例是一个任务,它将作为cron作业运行,以从外部设备收集数据

在Rails或我习惯的任何其他web框架中,我会创建一个脚本目录,并将类似的内容放在那里。然而,我对Java和这个框架还相当陌生,所以我不知道这个约定是什么,如果有的话,而且很难不分发未编译的源代码

查看上的Play文档,我看到最终结果是一个包含lib目录和开始脚本的目录。理想情况下,我的问题的解决方案是让play在开始脚本旁边生成我选择的另一个脚本:

my-application
 └ lib
    └ *.jar
 └ start
 └ new_script

我有什么建议或选择吗?

我在一次会议上问了一个类似的问题。看来没有什么像你想的那样是现成的。到目前为止,我已经通过编写一个bash脚本来克服这个问题,该脚本解压zip文件,添加我需要的内容,然后将其打包为tar.gz文件

首先,启动脚本没有打开可执行位。当我把它交给别人测试时,这很烦人。 它不包括在windows上运行的bat,所以我正在研究它 我可以很好地看到未来需要像你一样的脚本 我本想试试zip,但在命令行中无法找到它


我会提供补丁游戏,但他们似乎在增加新功能方面行动迅速,而不是在维护方面。我用2.0构建了我的应用程序,但它甚至不能用2.0.4。我不知道如何修补2.0版并升级到使用我自己的修补程序。

谢谢你的评论,Greg。到目前为止,我已经编写了一个简短的bash脚本来为Windows编写start.bat文件,并解析unix启动脚本上的执行位。我认为在distributable中打包另一个shell包装器,在其类路径中使用lib/*dir应该能够执行任意类。