为什么Play Framework 2.3.8部署不起作用?

时间:2015-06-14 19:22:41

标签: java playframework

我编写了一个名为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

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

1 个答案:

答案 0 :(得分:3)

找到解决方案:

目前播放框架中似乎有一个(开放?)错误: 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