gpt4 book ai didi

android - Gradle 构建时在 APK META-INF 中复制的重复文件

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:18:23 24 4
gpt4 key购买 nike

我一直在四处寻找 some of the answers在此处发布了有关此错误的信息,但没有运气。我希望得到一些关于正在发生的事情的澄清。我的错误如下:

Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'. com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/maven/commons-io/commons-io/pom.xml File1: /home/colin/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-io/1.3.2/b6dde38349ba9bb5e6ea6320531eae969985dae5/commons-io-1.3.2.jar File2: /home/colin/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/1.3.2/b6dde38349ba9bb5e6ea6320531eae969985dae5/commons-io-1.3.2.jar

我已经完成了

packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/notice.txt'
exclude 'META-INF/ASL2.0'
}

app>build.gradle文件中,问题依旧。我应该把它放在其他地方吗,或者只是删除一些文件?或者我可能排除了太多文件——我应该省略其中的一些行吗?如果是的话,哪些行?我还尝试将依赖项移动到 Android 之上的顶部,但无济于事。

此外,我对这些帖子中给出的一些建议感到有些困惑。 ExcludePickFirst 的操作区别是什么?它们似乎可以互换,但表达的想法却截然不同。似乎我在上传到应用程序商店时需要包含许可证,所以如果我在此处排除它以便让应用程序编译,那么当我准备上传时我应该在哪里包含它?我希望有人可以进一步阐明这里发生的事情。

最佳答案

我必须将以下行添加到 packagingOptions {}

exclude 'META-INF/maven/commons-io/commons-io/pom.xml'
exclude 'META-INF/maven/commons-io/commons-io/pom.properties'

我的问题很愚蠢;当包含 exclude 'META-INF/maven/commons-io/commons-io/pom.xml' 时,我得到一个错误,看起来与第一个非常相似,但是实际上是不同的。添加 exclude 'META-INF/maven/commons-io/commons-io/pom.properties' 终于让一切正常。仍然不确定为什么我必须采取这些步骤。

关于android - Gradle 构建时在 APK META-INF 中复制的重复文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34815891/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com