将应用程序推送到heroku时出错 - 类/对象已定义

时间:2012-08-30 20:08:43

标签: git scala heroku lift

我有一个Lift应用程序,我正在推动Heroku。我按照以下教程来设置我的项目。 - 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上传项目的方式有关吗?也许项目缓存导致问题?

1 个答案:

答案 0 :(得分:0)

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

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

  

警告:您运行的'git add'既没有'-A( - all)'或'--ignore-removal',   对于你删除的路径,其行为将在Git 2.0中发生变化。

     

像'app / .DS_Store'这样的路径   使用此版本的Git会忽略从工作树中删除的内容。

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

  •   
  • 'git add --all'会让你记录删除。

  •   
     

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

解决方案是将Heroku设置为使用heroku config:set SBT_CLEAN=true清除,然后放在git端git add . -A && git commit -m "message" && git push heroku master