1

我有一个要推送到 Heroku 的 Lift 应用程序。我已按照以下教程设置我的项目。- http://blog.heroku.com/archives/2011/10/3/scala/

当我执行git push heroku master命令并下载所有依赖项时,出现以下错误:

info] Done updating.
       [info] Compiling 34 Scala sources to /tmp/build_3mu8dl4lcbqoj/target/scala-2.9.1/classes...
       [error] /tmp/build_3mu8dl4lcbqoj/src/main/scala/code/models/Model.scala:97: CardAttribute is already defined as class CardAttribute
       [error] class CardAttribute extends MongoRecord[CardAttribute]
       [error]       ^

该项目在本地编译得很好,所以我不确定为什么它说类/对象已经存在。这与heroku上传项目的方式有关吗?也许是项目缓存导致了问题?

4

1 回答 1

0

这有点晚了,但也许这可以帮助其他人。

我遇到了同样的问题,我正在重构我的代码并更改了包名称,然后我尝试推送到 Heroku,但由于重复的对象而失败。我的错误是我使用git add .它忽略了我的 git 版本上已删除的文件:

警告:您运行 'git add' 时既没有使用 '-A (--all)' 也没有使用 '--ignore-removal',其行为在 Git 2.0 中会根据您删除的路径发生变化。

此版本的 Git 会忽略从工作树中删除的“app/.DS_Store”之类的路径。

  • 'git add --ignore-removal' 是当前默认值,它会忽略您从工作树中删除的路径。

  • 'git add --all' 还可以让您记录删除。

运行“git status”以检查您从工作树中删除的路径。

解决方案是将 Heroku 设置为 clean with heroku config:set SBT_CLEAN=true然后在 git side git add . -A && git commit -m "message" && git push heroku master

于 2014-06-02T08:55:51.817 回答