【问题标题】:Duplicate files during packaging of an APK打包 APK 期间文件重复
【发布时间】:2013-09-14 22:07:45
【问题描述】:

我使用 Android Studio,并且我有几个在那里使用的库。

我有:

android-query-full.0.25.10.jar
gson-2.2.4-sources.jar
slide-menu.jar

我在build.gradle文件中定义了像这样编译整个libs目录:

dependencies {
    compile 'com.android.support:support-v4:13.0.+'
    compile fileTree(dir: 'libs', include: '*.jar')
}

所有这些都很好。

现在我想添加另一个库“PullToRefresh” 我已将 ResSrc 文件夹与来自 eclipse 的源代码打包到一个 jar 文件中(就像我对 SlideMenu.jar 所做的那样),并将新创建的 jar 作为库添加到我的项目中,与所有其他项目相邻。

当我尝试构建我的项目时,我从 gradle 收到以下错误:

Gradle: : duplicate files during packaging of APK C:\Code\TestProject\Test\build\apk\Endilo-debug-unaligned.apk
Gradle: Execution failed for task ':Endilo:packageDebug'.
> Duplicate files copied in APK res/values/attrs.xml
    File 1: C:\Code\TestProject\Test\libs\PullToRefresh.jar
    File 2: C:\Code\TestProject\Test\libs\PullToRefresh.jar

这很奇怪,因为我从同一个 jar 文件中得到了重复。这里发生了什么!?

【问题讨论】:

标签: android jar gradle android-studio


【解决方案1】:

这发生在我身上。我从 eclipse adt 导出 jar,我得到了同样的错误。我通过用 WinRAR 打开 jar 文件解决了这个问题,并删除了除两个文件夹之外的所有文件夹:META-INF 和类的包文件夹,在我的情况下它是 com 文件夹。 就我而言,这是因为 jar 中的 AndroidManifest.xml 文件而发生的。 在您的情况下,这是因为 res/values/attrs.xml 但可能还有其他冲突,并且此文件是第一个冲突。

我希望这会有所帮助。

【讨论】:

    【解决方案2】:

    您会在导出的 jar 的 bin/ 文件夹中找到另一个 jar;使用那个。

    【讨论】:

      猜你喜欢
      • 2016-06-19
      • 2015-05-02
      • 2014-01-07
      • 2015-12-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多