【问题标题】:duplicate files during packaging of APKAPK打包过程中重复文件
【发布时间】:2014-11-17 22:06:32
【问题描述】:

我刚开始 Android 编程。我尝试使用多个 3rd 方 jar 构建应用程序。

打包应用时出现“打包APK时文件重复”的错误。原因是META-INF目录中有一些同名的文件(文件内容不一样,需要有不同的版本)。

Android 打包如何工作? Android 是否只是从 libs 文件夹中解压缩所有 jar,然后将 everything 放入 APK 中?这个APK只是一个大罐子吗?

【问题讨论】:

    标签: android jar packaging


    【解决方案1】:

    apk 就像一个 jar 只是一个 zip 容器。使用 gradle 时可以像这样控制打包。

    packagingOptions {
        exclude 'asm-license.txt'
        exclude 'LICENSE'
        exclude 'NOTICE'
    }
    

    以上为我解决了assertj的重复文件问题

    【讨论】:

    • 不,这不能解决问题,因为这些文件中的内容不同(在我的情况下)。想象一下带有 META-INF/spring/beans.xml 的 bundle1.jar。而bundle2.jar,也带有一个META-INF/spring/beans.xml。两者都包含 Spring bean - 但不同的。简单地排除这些文件会破坏代码。
    • OK 不知道您的问题的那一部分。对我来说,它解决了所有重复文件问题
    猜你喜欢
    • 2015-02-11
    • 2014-10-18
    • 1970-01-01
    • 2013-09-14
    • 2015-08-02
    • 2015-12-20
    • 1970-01-01
    相关资源
    最近更新 更多