You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android集成谷歌翻译API编译报错:存在重复META-INF/LICENSE文件

解决Android集成谷歌翻译API时的META-INF/LICENSE冲突报错

嘿,这个问题我之前帮不少开发者踩过坑!当你集成谷歌翻译API后出现 Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'. More than one file was found with OS independent path 'META-INF/LICENSE' 这个报错,本质是多个依赖库(包括谷歌翻译的SDK)都打包了同名的META-INF/LICENSE文件,Gradle在合并资源的时候不知道该保留哪一个,直接抛出冲突了。

下面给你两种实用的解决办法:

方法一:直接排除重复的LICENSE文件(最常用)

在你的app模块下的build.gradle文件中,添加packagingOptions配置,告诉Gradle打包时忽略所有重复的LICENSE文件:

android {
    // 其他配置...

    packagingOptions {
        exclude 'META-INF/LICENSE'
        // 如果后续还遇到类似的LICENSE.txt、NOTICE等重复文件,也可以一并排除
        // exclude 'META-INF/LICENSE.txt'
        // exclude 'META-INF/NOTICE'
    }
}

配置完成后,点击Android Studio右上角的「Sync Now」同步Gradle,然后重新构建项目即可。

方法二:保留第一个找到的LICENSE文件(适用于在意许可证保留的场景)

如果你不想完全排除,希望保留某一个库的LICENSE文件,可以用pickFirst让Gradle优先保留第一个找到的文件:

android {
    // 其他配置...

    packagingOptions {
        pickFirst 'META-INF/LICENSE'
    }
}

不过要注意:这种方式会忽略其他依赖库的LICENSE文件,如果你需要严格遵守各个库的许可证条款,建议先确认这么做是否合规。

内容的提问来源于stack exchange,提问作者hr intern

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:39:32