提问者:小点点

Android,无法使用Retrofit和RxJava 2构建应用程序


这是依赖项

compile 'com.squareup.retrofit2:retrofit:2.2.0'
compile 'io.reactivex.rxjava2:rxjava:2.0.7'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
compile 'com.squareup.retrofit2:adapter-rxjava:2.2.0'
compile 'com.google.code.gson:gson:2.7'
compile 'com.squareup.retrofit2:converter-gson:2.0.0'

当我尝试运行应用程序时,我收到这个错误

Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.

com.android.build. api.transform.TransformException:com.android.builder.package.DuplicateFileException:复制在APKMETA-INF/rxjava.properties文件中的重复文件1:C:\用户\abondarenco.gradle\缓存\module-2\files-2.1\io.reactive ex.rxjava2\rxjava\2.0.7\21734c0092a5d3c3ec99510e50c1ff76bdf0c65a\rxjava-2.0.7.jar文件2:C:\用户\abondarenco.gradle\缓存\module-2\files-2.1\io.reactivex\rxjava\1.2.0\42bfaf64c94f3848ebf5cf1c2ea4ec9d1b3ac6c8\rxjava-1.2.0jar

我尝试在没有适配器-rxjava的情况下运行应用程序并且它可以工作,但是当我添加适配器时它说有重复文件,它会下载RxJava 1…


共2个答案

匿名用户

使用适当版本的适配器。

compile 'com.squareup.retrofit2:adapter-rxjava2:2.2.0'

匿名用户

我知道现在回答这个问题已经太晚了,但我最近遇到了同样的问题,并且能够通过更新模块级build. gradle文件来解决这个问题。

android {
  packagingOptions{
      exclude 'META-INF/rxjava.properties'
  }
}

希望它能帮助一些人摆脱这个问题。