我们的项目使用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可以同时使用,为什么我还收到这个错误?
发布于 2017-06-28 12:43:07
运行时不需要rxjava.properties文件。
所以你可以在打包安卓应用的时候,通过在app/build.gradle文件中设置packagingOptions来排除这个文件,如下所示。
android {
...
packagingOptions {
exclude 'META-INF/**rxjava.properties**'
}
}https://stackoverflow.com/questions/44792066
复制相似问题