我在我的应用程序中使用了retrofit和Okhttp并且抛出了几个错误,首先我通过在改造中排除okio和gson来解决,并且我编译了okhttp但是它不能正常工作,它每次都会带来错误,这是错误:任务':app:transformClassesWithJarMergingForDebug'的执行失败。 > com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:com / google / gson / annotations / Expose.class,另一次将它带出Okio作为Okio / asyncTimeout,如何我可以解决这个问题吗?
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile files('libs/mobilesec.jar')
compile files('libs/org-apache-commons-codec.jar')
compile files('libs/apache-commons-lang.jar')
compile files('libs/core-1.51.0.0.jar')
compile files('libs/gson-2.0.2.jar')
compile files('libs/okio-1.2.0.jar')
compile files('libs/sqliteassethelper-2.0.1.jar')
compile 'com.android.support:support-v4:21.+'
compile 'com.android.support:appcompat-v7:21.+'
compile files('libs/gcm.jar')
compile 'com.crittercism:crittercism-android-agent:+'
compile 'com.google.android.gms:play-services-wearable:6.5.87'
compile ('com.squareup.okhttp3:logging-interceptor:3.2.0'){
exclude module: 'com.squareup.okio'
}
compile 'com.android.support:multidex:1.0.0'
}
答案 0 :(得分:0)
你有Gson和Okio罐子重复..删除
compile files('libs/gson-2.0.2.jar')
compile files('libs/okio-1.2.0.jar')
但是..为什么要通过本地jar和远程存储库加载依赖项?我建议只使用远程依赖。
编辑:您可以使用命令gradle dependencies
呈现依赖关系树。运行它并检查为什么gson被添加两次。