我如何运行一个游戏框架2.0的应用程序作为Windows服务?(How do I run a Pla

2019-06-17 21:24发布

我有我想要部署(生产)在Windows Server 2008 R2上播放Framework 2.0应用程序。 我如何得到它作为服务运行?

Answer 1:

这为我工作在Windows 7上:

  1. 创建文件夹C:\程序my_app
  2. 去你玩游戏! 在命令行和类型的应用程序的文件夹

    play dist

  3. 产生“的东西 - 快照”文件夹复制到C:\程序my_app
  4. 下载YAJSW并解压到C:\程序my_app
  5. 在C:\程序my_app \东西-SNAPSHOT \创建一个新的文件start.bat,然后用这样的命令填充它:

    java -cp "C:\my_app\something-SNAPSHOT\lib\*" play.core.server.NettyServer

  6. 保存并推出的start.bat。 Google Play应用程式必须启动并像往常一样工作。 看看服务器的PID。 您将在下一步中使用它。

  7. 现在,使用命令提示符下进入C:\程序my_app \ yajsw \蝙蝠和类型

    genConfig.bat < PID from previous step >

  8. 您生成的C:\程序my_app \ yajsw \的conf \ wrapper.conf。 编辑这个文件,并修改这些PARAMS像这样:

    wrapper.ntservice.name=My App Name
    wrapper.ntservice.displayname=My App Name


    保存存档。

  9. 终止你在6开始,然后显示start.bat脚本,在C:\程序my_app \ yajsw \蝙蝠推出

    runConsole.bat

    如果应用程序启动时,做一个Ctrl c (和回答y)终止该批处理文件并进行下一步。

  10. 要安装服务的推出( 以管理员身份运行

    installService.bat

  11. 要启动服务的推出

    startService.bat

现在你可以看到在Windows服务中的“我的应用程序名称”服务。 要停止服务,您可以使用stopService.bat 。 要卸载它uninstallService.bat



Answer 2:

你应该看看这个问题: 运行Java应用程序作为服务

你将不得不使用play dist命令,然后调整start ,以在Windows上运行的脚本。



Answer 3:

如果你在第5步中的错误看起来是这样的:

Play server process ID is 1132

[info] play - database [default] connected at jdbc:h2:file:db/h2/play

[warn] play - Your production database [default] needs evolutions!

... bunch of SQL statements in the console ...

[warn] play - Run with -DapplyEvolutions.default=true if you want to run them automatically (be careful)

Oops, cannot start the server.

@6gme0o9k5: Database 'default' needs evolution!

然后,像这样运行,而不是命令:

java -cp "C:\my_app\something-SNAPSHOT\lib\*" -DapplyEvolutions.default=true play.core.server.NettyServer

米哈伊尔中所描述的过程中另外两个项目绊倒了我:

首先, 步骤9之前,请确保您终止在第6步开始的start.bat脚本。 不这样做导致我张贴在这里的悲痛:

如何部署玩Framework 2.0应用程序作为Windows服务,当我修复服务器糟糕错误?

最后,请确保您以管理员身份 ,当你打开你的DOS命令窗口中运行 。 当我在做我的部署我不能没有作为管理员身份运行installService.bat脚本。



Answer 4:

我们曾与困难start.bat在这里其他的答案列出的方法。 两个主要的问题是缺乏引导的,当服务器决定重新启动本身周二补丁,并使用VBS等装饰,以防止需要保持命令窗口打开,以保持JVM活跃的要求。

我们曾用成功共享后台程序在生产环境中运行的Windows播放应用。

我们使用dist打包分发的应用程序,然后安装与使用共享守护进程Windows服务。



Answer 5:

富勒新游戏版本,你可以使用sbt-native-packager几乎自动准备安装和服务

http://www.scala-sbt.org/sbt-native-packager/formats/windows.html



文章来源: How do I run a Play Framework 2.0 application as a Windows service?