首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Android Studio dexDebug 報錯:Exit value 2 解決思路

     編輯:程式設計疑難解答

錯誤訊息


Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command ... java.exe' finished with non-zero exit value 2

常見原因排查清單

  1. 方法數超過 65535 (Dex 限制) → 啟用 multiDexEnabled true。
  2. 重複依賴 / Jar 衝突 → 檢查 dependencies 是否重複引入同一庫(如 support-v4、gson)。
  3. Java 版本不一致 → 專案 sourceCompatibility/targetCompatibility 與 JDK 版本對齊(建議 Java 8)。
  4. 記憶體不足 → dexOptions { javaMaxHeapSize "4g" }。
  5. Instant Run / 快照衝突 → 關閉 Instant Run,Clean Project → Rebuild。

建議檢查步驟


// build.gradle (app)
android {
    defaultConfig {
        multiDexEnabled true  // 關鍵
    }
    dexOptions {
        javaMaxHeapSize "4g"
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    implementation 'com.android.support:multidex:1.0.3' // 若未自動包含
    // 檢查是否有重複 jar,用 implementation 替代 compile
}

關鍵提問:是否導入了第三方 Jar?

許多時候是手動放入 libs/ 的 jar 與 Gradle 依賴衝突。建議:

  • 移除 libs/ 手動 jar,改用 Maven 依賴。
  • 執行 ./gradlew app:dependencies 查看依賴樹,找出重複群組/模組。

終極大招

  1. File → Invalidate Caches / Restart
  2. 刪除 .gradle、build 資料夾
  3. 升級 Android Gradle Plugin 到穩定版

若以上皆無效,請貼上完整 build.gradle 與 gradlew --stacktrace 輸出,方便精準定位。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved