我们的项目使用 RxJava 1:
compile 'io.reactivex:rxjava:1.1.6'
我们使用一个内部使用 RxJava 2 的库:
compile 'io.reactivex.rxjava2:rxjava:2.0.9'
当我做./gradlew assembleDebug
我收到此错误:
com.android.build.api.transform.TransformException:com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/rxjava.properties
File1: /Users/darklord/.gradle/caches/modules-2/files-2.1/io.reactivex/rxjava/1.1.6/2586312cd2b8a511e4c6236736f5a039fc0f2273/rxjava-1.1.6.jar
File2: /Users/darklord/.gradle/caches/modules-2/files-2.1/io.reactivex.rxjava2/rxjava/2.0.9/a5aad74623ade11162dd53cdf0645a51b12221a0/rxjava-2.0.9.jar
我认为据说 RxJava 1 和 RxJava 2 可以同时使用,为什么我仍然收到此错误?
运行时不需要 rxjava.properties 文件。
因此,您可以在打包 Android 应用程序时通过在 app/build.gradle 文件中设置打包选项来排除该文件,如下所示。
android {
...
packagingOptions {
exclude 'META-INF/**rxjava.properties**'
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)