我已经编写了一个名为quizSystem的播放框架2.3.8的程序。
它正在使用内存数据库,某些控制器,视图类等。

现在,我想在另一台机器上运行我的程序(安装了JDK 8u45的Windows 7,并且PATH设置为JDK),因此我在机器1上运行activator dist并获得了一个带有我的程序快照的.zip文件。我将此zip文件复制到了机器2,将其解压缩并使用控制台转到/ bin文件夹。其中有2个文件quizSystemquizSystem.bat

所以我输入quizSystem

错误:Oops, cannot start the server ... Database 'default' needs evolution

所以我尝试了这个:quizSystem -DapplyEvolutions=true
错误:Bad application path: -DapplyEvolutions=true

因此,我将applyEvolutions=true行添加到application.conf文件中。

但是,无论我使用哪个命令,都可以启动该程序。
我已经搜索并尝试了许多类似此处的解决方案:Play Framework 2.1.1 Deployment Issues

为什么进化/我的程序不起作用?

最佳答案

找到了解决方案:

目前,播放框架中似乎存在一个(打开?)错误:
https://github.com/playframework/playframework/issues/3081

如果我正确理解了java的输入参数的顺序,那么在play框架中就走错了路。这就是在控制台中手动输入产生错误的原因。

因此,这里是步骤的完整列表,以生成用于部署的工作程序:

1)在您的目录中,在控制台中输入activator dist

2)您在/target/universal目录中找到一个zip文件(其中包含单词SNAPSHOT或类似词

3)在目标计算机上,您需要安装的JDK,请转至以下位置:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

4)解压缩zip文件,在/bin文件夹中编辑.bat文件

5)搜索set "APP_MAIN_CLASS=play.core.server.NettyServer"并更改为

set "APP_MAIN_CLASS= -DapplyEvolutions.default=true play.core.server.NettyServer"


6)然后只需使用控制台导航到该文件夹​​并键入程序名称

我希望这可以使其他人避免几个小时的沮丧,绝望


   并大声喊叫和诅咒:D

07-27 23:01