当前位置: 首页 > 知识库问答 >
问题:

Android gradle build提供DuplicateFileException

濮阳赞
2023-03-14

嗨,在添加apache poi gradle构建之后,我得到了这个期望。你能给我解释一下怎么解决吗。

我尝试过以多种方式排除套餐选项,但都没有成功

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.1.0'
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:design:25.1.0'
    compile 'com.android.support:cardview-v7:25.1.0'
    compile 'org.greenrobot:greendao:3.2.0'
    compile group: 'org.apache.poi', name: 'poi-ooxml', version: '3.9'

}

错误:任务': app: transformResourcesSusMergeJavaResForDebug'执行失败。

com.android.build.api.transform.TransformException:com.android.builder.packaging.DuplicateFileException:复制在APK META-INF/LICENSE File1: /home/surendra/.gradle/caches/modules-2/files-2.1/org.apache.poi/poi-ooxml-schemas/3.9/4c514498f0e82cccfdd3208b9caff2f45158db4a/poi-ooxml-schemas-3.9.jarFile2: /home/surendra/.gradle/caches/modules-2/files-2.1/org.apache.poi/poi-ooxml/3.9/bbe83c739d22eecfacd06d7e0b99ba13277040ed/poi-ooxml-3.9.jarFile3: /home/surendra/.gradle/caches/modules-2/files-2.1/org.apache.poi/poi/3.9/5d5e41354e88322e4bc590b31f3d2d1d52b3e6ac/poi-3.9.jar

共有3个答案

孙嘉
2023-03-14

通过将此文件添加到渐变文件来排除重复的文件

    android {
        ...
        packagingOptions {
                exclude 'META-INF/DEPENDENCIES'
                exclude 'META-INF/NOTICE'
                exclude 'META-INF/LICENSE'
                exclude 'META-INF/LICENSE.txt'
                exclude 'META-INF/NOTICE.txt'
            }
}
陶锋
2023-03-14

转到您的构建。渐变文件并添加以下行:

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

在我的情况下,我不得不添加如下内容:

apply plugin: 'com.android.library'    
android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
    }
}
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:appcompat-v7:+'
    compile 'com.google.android.gms:play-services:6.5.87'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.mcxiaoke.volley:library:1.0.15'
    compile 'com.google.code.gson:gson:2.2.4'
    compile "org.apache.httpcomponents:httpcore:4.4.1"
    compile "org.apache.httpcomponents:httpmime:4.3.6"


}

为了更好地参考,请访问此答案。

蒋高超
2023-03-14

尝试使用以下代码排除重复的文件

packagingOptions {
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/NOTICE.txt'
    pickFirst  'META-INF/license.txt'
        }
 类似资料:
  • 嗨,我正在尝试连接我的ElasticSearch客户端到我的本地主机,并尝试从那里获得索引。 curl-xput'http://localhost:9200/twitter/'curl-xput'http://localhost:9200/twitter/_mapping/tweet'-d'{ “tweet”:{“properties”:{ “message”:{“type”:“string”,“

  • 为了给研发团队提供更为灵活的测试方式,我们提供一组UWA API,以帮助研发人员收集自定义的数据信息,并在报告中进行查看。目前,该功能只为专业会员开放。 目前,UWA API 提供以下两种功能: 自定义代码段测试 自定义变量测试 自定义代码段测试 (UWAEngine.PushSample / PopSample) public static void PushSample(string samp

  • 提供者(Provider) 是一个连接以太坊网络的抽象,用与查询以太坊网络状态或者发送更改状态的交易。 EtherscanProvider 和 InfuraProvider 提供连接公开的第三方节点服务提供商,无需自己运行任何以太坊节点。 JsonRpcProvider 和 IpcProvider 允许连接到我们控制或可以访问的以太坊节点(包括主网,测试网,权威证明(PoA)节点或Ganache)

  • 问题内容: 我只是熟悉Apache JackRabbit。我已经完成了一些用于文档管理的多用户存储库。 如果有人同时使用它们,您能回答这些问题吗? ModeShape是否以某种方式链接到JBoss?我对JBoss AS或任何其他JBoss工具没有太多经验。我看到了对tomcat的支持,但是有很多JBossy的东西 文档说将来的发行版应该具有UI集成,这还有很长的路要走吗?它将是什么样的UI集成?是

  • 问题内容: 对于我正在编写的应用程序,一旦用户将手指从屏幕上移开,我想调用某个动作。我了解我需要检查event.getAction()是否为ACTION_UP,但我从getAction()获得的全部为ACTION_DOWN。我的代码如下所示: 有人知道造成此问题的原因是什么? 先感谢您。 问题答案: 确保onTouch返回true,该值告诉os您的侦听器处理触摸事件。 来自docs:onTouch

  • 我已经在文件中添加了所有相关build.gradle依赖项。尽管如此,当我尝试运行调用SOAP服务时,还是会出现以下错误。共享依赖项部分和错误详细信息。使用Java11。网上已经有很多答案,但似乎都不起作用。任何帮助/建议将是值得赞赏的。 低于错误跟踪