播放应用程序 - 在Heroku中推送拒绝

时间:2014-03-14 21:58:36

标签: heroku github playframework-2.0 sbt

我创建了一个Play应用程序,然后使用

将其推送到heroku
  git push heroku master

那很有用。

然后我把它推到我的github帐户

  git push -u origin master

那很有效。

我在我的应用程序中进行了一些小的代码更改,它在我的本地计算机上运行良好。当我尝试使用以下步骤推送到Heroku时:

  git add .
  git commit -m "comments"
  git push heroku master

它打破了消息:

   [info] Set current project to MyProjectX (in build file:/tmp/scala_buildpack_build_dir/)
   java.util.NoSuchElementException: key not found: SOURCE
   at scala.collection.MapLike$class.default(MapLike.scala:228)
   at scala.collection.AbstractMap.default(Map.scala:58)
   at scala.collection.MapLike$class.apply(MapLike.scala:141)
   ....
   ....
   ....
   [error] (compile:managedSources) java.util.NoSuchElementException: key not found: SOURCE
   [error] Total time: 2 s, completed Mar 14, 2014 9:47:42 PM
   !     Failed to build app with sbt

   !     Push rejected, failed to compile Play 2.x - Scala app

    To git@heroku.com:MyProjectX.git
   ! [remote rejected] master -> master (pre-receive hook declined)
   error: failed to push some refs to 'git@heroku.com:MyProjectX.git'

当我把它推到heroku时,我不确定为什么它会突然断裂。它与github有些冲突吗?感谢。

2 个答案:

答案 0 :(得分:0)

在Build.scala中用play.Project替换sbt.Project为我修复了它。

另见https://github.com/playframework/playframework/issues/2263#issuecomment-36190502

在:

val main = play.Project(appName, appVersion, appDependencies)

后:

val main = sbt.Project(id = appName, base = file("."))
  .settings(
    version := appVersion,
    libraryDependencies ++= appDependencies
  )

答案 1 :(得分:0)

heroku config:设置SBT_CLEAN = true应解决此问题

更多Heroku Help Page