Playframework 如何将Play Framework 2.0应用程序作为Windows服务运行?
我有一个Play Framework 2.0应用程序,我想在Windows Server 2008 R2上部署(生产)。如何使其作为服务运行?您应该看看这个问题:Playframework 如何将Play Framework 2.0应用程序作为Windows服务运行?,playframework,windows-server-2008,playframework-2.0,windows-server-2008-r2,Playframework,Windows Server 2008,Playframework 2.0,Windows Server 2008 R2,我有一个Play Framework 2.0应用程序,我想在Windows Server 2008 R2上部署(生产)。如何使其作为服务运行?您应该看看这个问题: 您必须使用playdist命令,然后调整start脚本,以便在Windows上运行。这对我在Windows 7上的工作非常有效: 创建文件夹C:\my\u应用程序 去看戏吧!命令行中的应用程序文件夹和类型 播放距离 将生成的“某物快照”文件夹复制到C:\my\u应用程序 下载并解压缩到C:\my\u应用程序 在C:\my\u app\
您必须使用
playdist
命令,然后调整start
脚本,以便在Windows上运行。这对我在Windows 7上的工作非常有效:
播放距离
java-cp“C:\my\u app\something SNAPSHOT\lib\*”play.core.server.NettyServer
genConfig.bat
wrapper.ntservice.name=我的应用程序名
wrapper.ntservice.displayname=我的应用程序名称
保存文件
runConsole.bat
如果应用程序启动,执行
Ctrl c
(并回答y)以终止批处理文件并继续下一步installService.bat
startService.bat
要停止服务,您可以使用
stopService.bat
。要卸载它,请执行以下操作:uninstallService.bat
如果在步骤5中出现错误。如下所示:
播放服务器进程ID为1132
[info]播放-数据库[默认]连接在jdbc:h2:file:db/h2/play
[warn]播放-您的生产数据库[default]需要改进代码>
。。。控制台中的一堆SQL语句代码>
[warn]play-Run with-DapplyEvolutions.default=true,如果要自动运行它们(请小心)
Oops,无法启动服务器。
@6gme0o9k5:数据库“默认”需要改进代码>
然后按如下方式运行命令:
java-cp“C:\my\u app\something SNAPSHOT\lib\*”-DapplyEvolutions.default=true play.core.server.NettyServer
Mikhail描述的过程中的另外两个项目让我绊倒了:
首先,在步骤9.之前,请确保终止在步骤6中启动的start.bat脚本。。不这样做造成了我在这里发布的悲痛:
最后,请确保在打开DOS命令窗口时以管理员身份运行。在我进行部署时,如果没有管理员身份,我无法运行installService.bat脚本。我们无法使用此处其他答案中列出的start.bat
方法。两个主要问题是,当服务器决定在补丁程序星期二重新启动时,缺乏引导,以及需要使用VBS和其他装饰,以防止需要保持命令窗口打开以保持JVM活动
我们已经成功地在生产环境中使用在Windows上运行播放应用程序
我们使用dist
打包应用程序以进行分发,然后使用Commons守护程序作为Windows服务安装 对于较新的play版本,您可以使用几乎自动准备安装程序和服务的sbt native packager
清除信息,就像它一样,另外我建议将正在运行的\u PID
文件重命名为其他文件,以防止服务器突然重启后出现启动问题,()