4

我在 android 上收到此错误(再次!)。最近更新到最新版本的 gradle 0.7.3 以及最新版本的 espresso 框架(1.1),我又回到了臭名昭著的“重复文件”错误。

任务 ':mobile:packageTesttype' 的执行失败。

在 APK META-INF/LICENSE.txt 文件 1 中复制的重复文件:/Users/mwolfe/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpmime/4.2.4/dba4d4d224e2ca872af5be8d2992777583145478/httpmime-4.2 .4.jar 文件 2:/Users/mwolfe/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpmime/4.2.4/dba4d4d224e2ca872af5be8d2992777583145478/httpmime-4.2.4.jar

我已经将 build.gradle 文件设置为排除这些文件。该应用程序可以很好地组装以进行调试/发布并运行良好,但是构建/运行以进行测试却失败了。具体来说,当我尝试使用以下命令运行仪器测试时,就会出现上述错误。

gradle connectedCheck

我也有一个库项目,并且尝试了各种方式将排除项添加到两个构建文件中。此特定依赖项来自库项目。它们都有以下排除项

packagingOptions {
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/LICENSE.txt'
}

我还尝试删除上面的 META-INF 部分,因为它在此处的 espresso 文档中显示:https ://code.google.com/p/android-test-kit/wiki/Espresso#Espresso_Setup_Instructions

我知道我可以从 jar 中删除这些文件,但这很痛苦。

4

1 回答 1

7

尝试包括其他变体...复制并粘贴此:

packagingOptions {
    exclude 'LICENSE.txt'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/LICENSE.txt'
    exclude 'NOTICE.txt'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/NOTICE.txt'

}
于 2014-09-19T18:05:51.610 回答