2015-01-09 74 views
1

我正在將我的Android代碼從Eclipse遷移到Android Studio,並且一直停留在以下錯誤。該項目建立良好並與gradle同步,但在編譯時會引發以下錯誤。頂級異常應用程序:dexDebug -dex -no-optimize --output android studio

UNEXPECTED TOP-LEVEL EXCEPTION: 
Error:Execution failed for task ':app:dexDebug'. 

com.android.ide.common.internal.LoggedErrorException:無法運行命令: /home/Work/adt-bundle-linux-x86-20130729/sdk/build-tools/21.1。 2/dx --dex --no-optimize --output/home/Work/Roadblock/Android Studio項目新/ app/build/intermediates/dex/debug --input-list =/home/Work/Roadblock/Android Studio新的項目/應用/編譯/中間體/ tmp目錄/ DEX /調試/ inputList.txt 錯誤代碼:輸出: 意外頂級例外: com.android.dex.DexException:多DEX文件定義Landroid /支持/ V4 /視圖/ 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) 在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171) 在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.java:106) 信息:構建失敗 信息:總時間:22.183秒

我試圖解決這種錯誤與罐子和圖書館,甚至試圖將

configurations { 
    all*.exclude group: 'com.android.support', module: 'support-v4' 
} 

時,我曾在衝突支持庫。但是這似乎是構建工具的一種不同類型的錯誤。我嘗試檢出inputList.txt文件,如路徑/ home/Work/Roadblock/Android Studio Projects New/app/build/intermediates/tmp/dex/debug/inputList.txt中所述,但沒有發現任何相關內容,因爲它是由系統。

我早期的問題(Android Studio not detecting support libraries on Compilation)提供了有關項目結構的詳細信息,這似乎是從build.gradle中刪除配置標記後的錯誤。我檢查了使用的每個文件和庫,並刪除了可能已添加多次的罐子,但是此錯誤仍然存​​在。

相關內容:

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:[email protected]' 
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') 
} 
+0

什麼是你的依賴? – ianhanniballake

+0

我已經從gradle添加了依賴關係 – Roadblock

回答

1

Android build fails over com.android.dex.DexException: Multiple dex files define Landroid/support

exclude解決的問題如

dependencies { 
    compile fileTree(dir: 'libs', include: '*.jar', exclude: 'android-support-*.jar') 
    //... 
} 

Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat很容易爲exclude module: 'support-v4'

例如

dependencies { 
    compile('com.commonsware.cwac:camera-v9:0.5.4') { 
     exclude module: 'support-v4' 
    } 

    compile 'com.android.support:support-v4:18.0.+' 
} 

(也張貼到Gradle Exclude or add reference for JAR file hard included inside library classes.jar

相關問題