Reputation: 2071
I am migrating my Android code from Eclipse to Android studio and have been stuck at the following error. The project builds fine and syncs with gradle, but it throws the following error on compiling.
UNEXPECTED TOP-LEVEL EXCEPTION:
Error:Execution failed for task ':app:dexDebug'.
com.android.ide.common.internal.LoggedErrorException: Failed to run command: /home/Work/adt-bundle-linux-x86-20130729/sdk/build-tools/21.1.2/dx --dex --no-optimize --output /home/Work/Roadblock/Android Studio Projects New/app/build/intermediates/dex/debug --input-list=/home/Work/Roadblock/Android Studio Projects New/app/build/intermediates/tmp/dex/debug/inputList.txt Error Code: 2 Output: UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.DexException: Multiple dex files define Landroid/support/v4/view/PagerAdapter; 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) Information:BUILD FAILED Information:Total time: 22.183 secs
I have tried to resolve this kind of error with jars and library and have even tried inserting
configurations {
all*.exclude group: 'com.android.support', module: 'support-v4'
}
when I had conflicts in the support library. But this seems to be a different kind of error with the build tools. I tried to checkout the inputList.txt file as mentioned in the path /home/Work/Roadblock/Android Studio Projects New/app/build/intermediates/tmp/dex/debug/inputList.txt but found nothing relevent as it is build by the system.
My earlier question (Android Studio not detecting support libraries on Compilation) provides details about the project structure and this seems to be the error after removing the configurations tag from build.gradle. I checked each of the files and libraries used and removed the jars which might have been added multiple times, but this error still persists.
DEPENDENCIES:
apply plugin: 'com.android.application'
android {
compileSdkVersion 19
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "package.app"
minSdkVersion 8
targetSdkVersion 18
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile project(':facebookSDK')
compile project(':library')
compile project(':newPagerIndicator')
compile project(':pulltorefreshlib')
compile project(':volley')
compile 'com.android.support:support-v4:19.1.0'
compile 'com.google.android.gms:play-services:+'
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile files('libs/FlurryAnalytics_3.3.3.jar')
compile files('libs/crittercism_v3_2_0_sdkonly.jar')
compile files('libs/httpmime-4.2.5.jar')
compile files('libs/nineoldandroids-2.4.0.jar')
compile files('libs/picasso-2.3.3.jar')
compile files('libs/universal-image-loader-1.8.4.jar')
}
Upvotes: 1
Views: 923
Reputation: 41
In Android build fails over com.android.dex.DexException: Multiple dex files define Landroid/support
Solved with exclude
as
dependencies {
compile fileTree(dir: 'libs', include: '*.jar', exclude: 'android-support-*.jar')
//...
}
and
At Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat it easy as exclude module: 'support-v4'
example
dependencies {
compile('com.commonsware.cwac:camera-v9:0.5.4') {
exclude module: 'support-v4'
}
compile 'com.android.support:support-v4:18.0.+'
}
(also posted to Gradle Exclude or add reference for JAR file hard included inside library classes.jar)
Upvotes: 1