我有一个工作的应用程序,我现在已经转换为Eclipse中的库项目。当我尝试将库作为“项目引用”包含在空的应用程序中时(除了它从库中继承的其他功能之外没有其它功能),它无法构建。我收到了消息Unable to execute dex: Multiple dex files define Lcom/facebook/android/R$attr;
。
为了解决这个问题,我试图完全删除Android依赖项。但是后来我得到了库中类的“类未找到异常”。
是否可以删除Facebook依赖 而不 删除应用程序库依赖项?我试图删除facebooksdk.jar文件,但由于所有按钮都显示为灰色,因此无法执行此操作。 (见下面的屏幕截图)
我还尝试在“订单和导出”中取消选中“Android依赖关系”。这对问题没有影响。
欢迎您的建议。
仅供参考,我的项目有3个主要组成部分。所有3个都包含在同一个Eclipse项目文件夹中(参见屏幕截图):
答案 0 :(得分:1)
项目参考用于包括图书馆项目(例如,Facebook SDK)。
documentation - 和秃顶家伙的书籍 - 向您展示如何将Android库项目附加到您的应用程序,它与“项目参考”无关。
同样,the documentation for the Facebook SDK会向您展示如何将Android库项目附加到您的应用中(请参阅步骤6)。它们遵循标准的Android库项目方法,也不涉及“项目引用”。
现在,可以想象有一个关于更新的Eclipse版本(我正在运行Indigo)的东西导致“Project References”将Android库项目显示为已检查 - 它在我的版本中没有这样做。
确保您已正确设置Android库项目,并查看这是否有助于解决您的问题。