所以我有一个项目在我的机器上的一个工作区中完全正常工作。我将它推送到存储库,以便其他人都可以使用它。我去把它拉下来确保所有的变化都很好。我将项目导入一个新的工作区,并在其上使用带有autobuild的eclipse不会产生任何错误。
我转到命令行并在项目上运行ant clean release,然后才能在资产上运行crunch,构建失败并且多个dex文件定义错误。我已经检查了项目的高低,并与原始工作区中的其他副本进行了比较,但出于任何原因我无法构建它。我删除bin和gen文件夹并删除所有导入,基本上只留下项目,在eclipse中运行clean,仍然得到一个与lib项目类相关的dex定义错误。我试图找到额外的副本可能在哪里但我找不到任何东西。
谷歌搜索过去几天没有帮助,因为这个问题的正常解决方案对我没有用。那么最好的方法是找出额外的类定义来自哪里,这样我就可以摆脱它们并修复存储库,这样我就可以正确使用它。我有一种感觉它与项目中的一个文件有关,我应该在我的gitignore中排除但是我不确定它会是什么。对此事的任何帮助都将非常感激,因为这已经吃了很多时间只是乱七八糟。答案 0 :(得分:0)
如果您有多个具有相同包名称的类,则会引发此错误。
此问题的常见原因之一是在同一个库上有不同的版本。
例如,ActionbarSherlock
forder中的'libs
添加了support library
,并且您的项目在其support library
文件夹中还有libs
的另一个版本。在这种情况下,您应该将support library
。jar的一个版本放到您使用它的所有不同库中。
我希望这可以帮到你。
答案 1 :(得分:0)
我没有找到问题的根源,但我想出了一个修复。我将所有支持库移动到一个完全远离android项目的新根文件夹。一旦我这样做并清理了所有东西,我就运行了ant clean release并且项目建好了。