I'm running into some trouble with a library I included into my project:
At the beginning it was just a conflicting dependencies issue that I resolved by excluding
support-v4
which is the commonly shared module.
The problem is that one of those lbsLib-release
seems to have been built with a plain .jar
file inside of the root project before the developer build.
By running ./gradlew app:dependencies
I verified that the dependency is not referenced in the build graph.
And I found this support-v4
embedded into the classes.jar
located
at : app/build/intermedites/exploded-aar/MyQaaAndroid/lbsLib-release/unspecified/classes.jar/
as you can see on the picture below:
I can't rebuild the project myself because it is not an open-sourced lib, so there is two problem:
If I add
compile 'com.android.support:support-v4:18.0.+'
to thebuild.gradle
amultiple dex file
error is thrown at build time so the library is referenced twice.UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.DexException: Multiple dex files define Landroid/support/v4/app/BackStackState; at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596) at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554) at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535) at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171) at com.android.dx.merge.DexMerger.merge(DexMerger.java:189) at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454) at com.android.dx.command.dexer.Main.runMonoDex(Main.java:303) at com.android.dx.command.dexer.Main.run(Main.java:246) at com.android.dx.command.dexer.Main.main(Main.java:215) at com.android.dx.command.Main.main(Main.java:106)
`
If I remove all libs which require
support-v4
it throws a missing dependencies error at the application runtime.
So I would like to know if it is possible to exclude this .jar
file from the build or to make the others libs depends on the lbsLib-release
embedded support-v4
.jar
.
compile (project(':lbsLib-release')) {
exclude module: 'support-v4'
}
compile ('com.sothree.slidinguppanel:library:2.0.4'){
exclude module: 'support-v4'
}
compile('com.google.android.gms:play-services:6.5.87') {
exclude module: 'support-v4'
}