3

我有一个 play 1.2.5 应用程序,想将它部署在某个地方(这样我就可以为一些 OAuth 回调注册它)。我正在尝试将其推送到 heroku,但出现以下错误

-----> Play! app detected
-----> Installing OpenJDK 1.6...done
-----> WARNING: Play! version not specified in dependencies.yml. Default version: 1.2.4 being used....
-----> Installing Play! 1.2.4.....
-----> done
-----> Installing ivysettings.xml..... done
-----> Building Play! application...
       ~        _            _ 
       ~  _ __ | | __ _ _  _| |
       ~ | '_ \| |/ _' | || |_|
       ~ |  __/|_|\____|\__ (_)
       ~ |_|            |__/   
       ~
       ~ play! 1.2.4, http://www.playframework.org
       ~
       1.2.4
       Building Play! application at directory ./
       Resolving dependencies: .play/play dependencies ./ --forProd --forceCopy --silent -Duser.home=/tmp/build_ev7rk9y0hage 2>&1
       ~ !! /tmp/build_ev7rk9y0hage/conf/dependencies.yml does not exist
       ~
       ~ Done!
       ~
       Precompiling: .play/play precompile ./ --silent 2>&1
       ~ Oops. conf/routes or conf/application.conf missing.
       ~ /tmp/build_ev7rk9y0hage does not seem to host a valid application.
       ~
 !     Failed to build Play! application
 !     Cleared Play! framework from cache

 !     Push rejected, failed to compile Play! app

我一直在关注本指南: https ://devcenter.heroku.com/articles/play 更具体地说;

  1. heroku login
  2. 设置应用程序sendencies播放1.2.5
  3. 设置 .gitignore 文件
  4. web: play run --http.port=$PORT $PLAY_OPTS在项目根文件夹中创建 Procfile
  5. 致力于本地 git repo
  6. heroku create
  7. git push heroku master

我不知道如何解决这个问题,stackoverflow 和 googlegroups(以及其他一些来源)都无济于事。

4

1 回答 1

1

所以我解决了这个问题,问题是我们已经在使用 git 并且存储库是在 play 项目的父文件夹中初始化的parent/projRoot/,所以我猜 heroku 是在错误的地方寻找文件,因此无法构建。使用一个新的 git repo 初始化,projRoot/一切正常。

更新 要从子文件夹部署播放应用程序,我找到了以下解决方案:

从 git repo 的子目录在 Heroku 上部署 Play 应用

https://groups.google.com/forum/?fromgroups#!topic/play-framework/Gk9nfNSUzQs

于 2013-06-18T12:58:02.073 回答