当自己的项目中导入第三方的开源项目越来越多的时候,就容易包上面的错误,原因是包重复错误
解决方法:
1.查看 build.gradle 中有没有重复repos的,有的话删除其中的一个。
2.可以通过在Android Studio的Terminal下敲gradle -q app:dependencies 命令,便有以下输出:
+--- project :library_pulltorefresh
| \--- com.android.support:appcompat-v7:26+ -> 26.1.0
| +--- com.android.support:support-annotations:26.1.0
| +--- com.android.support:support-v4:26.1.0
| | +--- com.android.support:support-compat:26.1.0
| | | +--- com.android.support:support-annotations:26.1.0
| | | \--- android.arch.lifecycle:runtime:1.0.0
| | | +--- android.arch.lifecycle:common:1.0.0
| | | \--- android.arch.core:common:1.0.0
| | +--- com.android.support:support-media-compat:26.1.0
| | | +--- com.android.support:support-annotations:26.1.0
| | | \--- com.android.support:support-compat:26.1.0 (*)
| | +--- com.android.support:support-core-utils:26.1.0
| | | +--- com.android.support:support-annotations:26.1.0
| | | \--- com.android.support:support-compat:26.1.0 (*)
| | +--- com.android.support:support-core-ui:26.1.0
| | | +--- com.android.support:support-annotations:26.1.0
| | | \--- com.android.support:support-compat:26.1.0 (*)
| | \--- com.android.support:support-fragment:26.1.0
| | +--- com.android.support:support-compat:26.1.0 (*)
| | +--- com.android.support:support-core-ui:26.1.0 (*)
| | \--- com.android.support:support-core-utils:26.1.0 (*)
| +--- com.android.support:support-vector-drawable:26.1.0
| | +--- com.android.support:support-annotations:26.1.0
| | \--- com.android.support:support-compat:26.1.0 (*)
| \--- com.android.support:animated-vector-drawable:26.1.0
| +--- com.android.support:support-vector-drawable:26.1.0 (*)
| \--- com.android.support:support-core-ui:26.1.0 (*)
+--- project :uikit
| +--- com.android.support:appcompat-v7:26.+ -> 26.1.0 (*)
| +--- com.android.support:support-v4:26.+ -> 26.1.0 (*)
| +--- com.android.support:design:26.+ -> 26.1.0
| | +--- com.android.support:support-v4:26.1.0 (*)
| | +--- com.android.support:appcompat-v7:26.1.0 (*)
| | +--- com.android.support:recyclerview-v7:26.1.0
| | | +--- com.android.support:support-annotations:26.1.0
| | | +--- com.android.support:support-compat:26.1.0 (*)
| | | \--- com.android.support:support-core-ui:26.1.0 (*)
| | \--- com.android.support:transition:26.1.0
| | +--- com.android.support:support-annotations:26.1.0
| | \--- com.android.support:support-v4:26.1.0 (*)
| +--- com.android.support.constraint:constraint-layout:1.0.2
| | \--- com.android.support.constraint:constraint-layout-solver:1.0.2
| +--- me.everything:overscroll-decor-android:1.0.4
| | \--- com.android.support:recyclerview-v7:23.3.0 -> 26.1.0 (*)
| +--- me.leolin:ShortcutBadger:1.1.17
| +--- com.github.bumptech.glide:glide:4.2.0
| | +--- com.github.bumptech.glide:gifdecoder:4.2.0
| | | \--- com.android.support:support-annotations:26.0.2 -> 26.1.0
| | +--- com.github.bumptech.glide:disklrucache:4.2.0
| | \--- com.github.bumptech.glide:annotations:4.2.0
| \--- jp.wasabeef:glide-transformations:3.0.1
| \--- com.github.bumptech.glide:glide:4.0.0 -> 4.2.0 (*)
+--- io.reactivex:rxandroid:1.1.0
| \--- io.reactivex:rxjava:1.1.0 -> 1.1.1
+--- io.reactivex:rxjava:1.1.0 -> 1.1.1
+--- org.greenrobot:eventbus:3.0.0
+--- com.squareup.retrofit2:retrofit:2.0.1
| \--- com.squareup.okhttp3:okhttp:3.2.0
| \--- com.squareup.okio:okio:1.6.0
+--- com.squareup.retrofit2:converter-gson:2.0.1
| +--- com.squareup.retrofit2:retrofit:2.0.1 (*)
| \--- com.google.code.gson:gson:2.6.1
+--- com.squareup.retrofit2:adapter-rxjava:2.0.1
| +--- com.squareup.retrofit2:retrofit:2.0.1 (*)
| \--- io.reactivex:rxjava:1.1.1
+--- com.squareup.okhttp3:okhttp:3.0.1 -> 3.2.0 (*)
+--- com.squareup.okhttp3:logging-interceptor:3.0.1
| \--- com.squareup.okhttp3:okhttp:3.0.1 -> 3.2.0 (*)
+--- com.umeng.analytics:analytics:latest.integration -> 6.1.4
+--- com.orhanobut:hawk:2.0.1
| +--- com.google.code.gson:gson:2.4 -> 2.6.1
| \--- com.facebook.conceal:conceal:1.1.3
+--- com.xiaosong520:doublewaveview:1.0.2
+--- de.hdodenhof:circleimageview:2.1.0
+--- com.facebook.fresco:fresco:1.5.0
| +--- com.facebook.fresco:drawee:1.5.0
| | \--- com.facebook.fresco:fbcore:1.5.0
| +--- com.facebook.fresco:fbcore:1.5.0
| \--- com.facebook.fresco:imagepipeline:1.5.0
| +--- com.parse.bolts:bolts-tasks:1.4.0
| +--- com.facebook.fresco:fbcore:1.5.0
| \--- com.facebook.fresco:imagepipeline-base:1.5.0
| +--- com.parse.bolts:bolts-tasks:1.4.0
| \--- com.facebook.fresco:fbcore:1.5.0
+--- me.relex:photodraweeview:1.1.3
+--- com.netease.nimlib:basesdk:4.4.0
\--- com.netease.nimlib:avchat:4.4.0
在这里面可以查看自己compile的开源项目中,有没有引用了其他的包,导致了包冲突
3.可以在项目的 build.gradle 中
android {
defaultConfig {
multiDexEnabled true
}
}
4.直接运行项目报错的时候
通过gradle console 点开,点击其中的 run with --stacktrace 进行在--stacktrace模式下进行运行,就会得到以下的运行结果
可以发现是这个包冲突了,由于我自己是导入了网易云的ui lib,又在项目里面进行compile了,所以导致的报错,之后删掉就可以了