我在使用Remote Display API的Chromecast项目中获得了“Error converting bytecode to dex
”。我通过添加“multiDexEnabled true
”解决了这个问题,但这只会产生另一个错误:
错误:任务执行失败 ':应用程序:transformClassesWithJarMergingForDebug' &GT。 com.android.build.api.transform.TransformException: java.util.zip.ZipException:重复条目: COM /谷歌/机器人/克/内部/ zzlg.class
我已检查过Gradle
个文件,但发现没有任何冲突。我读了其他类似的线程,并尝试了他们的代码修复,但没有在这里使用。我该如何处理?这些是我的gradle文件:
答案 0 :(得分:2)
首先,尝试清理/重建项目,因为在清理/重建项目后通常会出现这种错误。
从documentation开始,当您在gradle.files中添加multiDexEnabled true
时,请确保在依赖项中添加编译'com.android.support:multidex:x.x.x'
。
有关更多信息,请查看以下相关的SO问题:
答案 1 :(得分:0)
您可能多次编译相同的依赖项。例如,play-services-cast
取决于appcompat-v7
。您可以使用以下命令阻止重新编译相同的依赖项:
compile ('com.google.android.gms:play-services-cast:8.3.+')
{
exclude group: 'com.android.support', module: 'appcompat-v7'
}
使用shell命令gradlew -q YourApp:dependencies
打印应用程序的依赖关系图;然后在build.gradle
中,排除多次显示的依赖项。