我将两个项目放入 Eclipse,分别称为 Project1 和 Project2。
Project1 是独立的,但 Project2 必须依赖于 Project1。
当我构建 Project2 时,错误消息如下:生成最终存档时出错:重复条目:AndroidManifest.xml
我将两个项目放入 Eclipse,分别称为 Project1 和 Project2。
Project1 是独立的,但 Project2 必须依赖于 Project1。
当我构建 Project2 时,错误消息如下:生成最终存档时出错:重复条目:AndroidManifest.xml
我弄清楚了问题所在。我包含了一个 JAR 文件,其中包含一个 AndroidManifest.xml 文件,该文件与我自己项目的 AndroidManifest.xml 文件冲突。我的实例中的解决方案是重建 JAR 文件,确保它排除了自己的 AndroidManifest.xml 版本,然后将新版本的 JAR 文件重新包含到我的项目中。执行此操作后,您可能需要清理项目。
几天前我遇到了同样的问题,如果你将 JAR 放在 libs 文件夹中并且 JAR 在 AndroidManifest.xml 中,则会出现错误。如果您将 JAR 放在项目之外(例如在桌面上)并且在“java Build Path”中使用“Add external JAR”问题就解决了。
我认为您使用 Project1 作为库。因此,当您导出 jar 文件时,您应该在“选择要导出的资源”上取消选择 AndroidManifest.xml。
通过包含一个 Android.R 包而不是 com.example.mypackage.R,我得到了第二个(不完整的)AndroidManifest.xml 文件。
症状:构建似乎工作,但启动显示工作区中存在的错误,需要先修复。一个 AndroidManifest.xml 在类中找到,另一个在名为 resources.ap_ 的文件中。我只是快速修复(包括 android.R)工作区到地狱。
编辑:也没有用,工作区还在地狱里;项目中的问题,喜欢被修复......
edit1:找不到包,应该包含AndroidManifest.xml。
edit2:我考虑假设 Android.jar 中的第二个清单文件 - 似乎每个清单文件都会生成 1 个 R.class。我删除了完整的工作区。因为它无论如何都是游乐场。(然后我设置了 Git。)
您将收到一系列与AndroidManifest、main.xml、activity_main相关的错误消息。因此,最好的解决方案是将它们(使用 shift+ctrl+R)从项目之一重命名为其他项目。
这解决了我的问题。
清理 Project1 可能会有所帮助。
您的库项目和应用程序项目中可能有类似的编译时依赖项,而 dex-er 无法识别重复项。
如果是这种情况,请将应用程序项目中的依赖项范围更改为提供的范围。
依赖项将被包含,因为它们在库项目中,并且它们不会被复制,因为它们是在编译应用程序项目时“提供”的。
我只能在 Android Studio 中通过删除 out/ 目录并让它重新构建所有内容来修复它。