我可以在heroku上使用playframework 2.0 webapp和基于maven的工作进程吗?

时间:2012-10-10 12:52:22

标签: maven heroku playframework playframework-2.0

我在heroku上有一个现有的webapp,需要将消息发送到队列。我希望工作人员选择消息并处理它们。在https://devcenter.heroku.com/articles/run-non-web-java-processes-on-heroku上阅读示例后,我认为通过Procfile运行另一个播放过程会很浪费,所以我做了以下项目结构,只为工作人员使用maven:

[git root]
   +--[play 2.0 app]
   |  + (project files)
   |  +-Procfile (web)  
   |
   +--[maven based worker]
      + (project files)
      +-Procfile (worker)

现在,如果我试图将所有这些推到heroku,它就会失败。 Heroku认为这是一个游戏1.2.4项目,然后就崩溃了。当我尝试指定播放2.0 buildpack时,它说“没有检测到Cedar支持的应用程序”。显然,heroku不喜欢我的目录结构。

我希望我的播放应用和我的maven工作者共享相同的git存储库,如果可能的话,成为heroku的同一部署的一部分。有没有一个共同的模式来解决这个问题?

1 个答案:

答案 0 :(得分:1)

你不能在Heroku的单个应用程序中混合多个构建包。相反,你可以把它作为一个Play 2应用程序。这是一个有助于您入门的示例项目:
https://github.com/jamesward/play2-scheduled-job-demo