2017/6/15 更新
如果大家在學習rxjava2.x + retrofit
的時候,不要使用上面的依賴了,上面的是rxjava2.x
剛出來的時候沒有合適的rxjavaadapter
採用的JW臨時方案,現在已經有正式版了
dependencies {
...
//okhttp
compile 'com.squareup.okhttp3:okhttp:3.6.0'
compile 'com.squareup.okio:okio:1.11.0'
//gson
compile 'com.google.code.gson:gson:2.8.0'
//retrofit 網路請求框架
compile 'com.squareup.retrofit2:retrofit:2.3.0'
compile 'com.squareup.retrofit2:converter-gson:2.3.0'
compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
//rxjava
compile 'io.reactivex.rxjava2:rxjava:2.1.0'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
}
複製程式碼
另外如果依然有報錯,可以採用這個同學的方法嘗試解決
我喂自己袋丶夏洛克: @看空間疼痛春節前日本劇
報的錯是一樣的,相當於沒有解決,所以我嘗試了其他辦法,最後在gradle檔案中新增
packagingOptions {exclude 'META-INF/rxjava.properties'}
後解決了問題,其他朋友若按照此文作者的方法還未能解決問題的話,可以嘗試使用我這個方法,能有效解決。
原文。
Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/rxjava.properties
File1: C:\Users\pdog18\.gradle\caches\modules-2\files-2.1\io.reactivex.rxjava2\rxjava\2.0.1\57f850a6b317e5582f1dbaff10a9e7d7e1fcdcfb\rxjava-2.0.1.jar
File2: C:\Users\pdog18\.gradle\caches\modules-2\files-2.1\io.reactivex\rxjava\1.1.1\b494968f6050d494de55dc3ce005e59c7eb40012\rxjava-1.1.1.jar
複製程式碼
支援有問題
//compile 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
複製程式碼
改用
compile 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'
複製程式碼
//修改後
dependencies {
...
compile 'com.squareup.okhttp3:okhttp:3.5.0'
compile 'com.squareup.okio:okio:1.11.0'
compile 'com.squareup.retrofit2:retrofit:2.0.2'
compile 'com.squareup.retrofit2:converter-gson:2.0.2'
// compile 'com.squareup.retrofit2:adapter-rxjava:2.0.2'
compile 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'
compile 'io.reactivex.rxjava2:rxjava:2.0.1'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
}
複製程式碼