【问题标题】:Error updating buildToolsVersion 21.0.2 to 22.0.1 [duplicate]将 buildToolsVersion 21.0.2 更新到 22.0.1 时出错 [重复]
【发布时间】:2015-06-03 14:57:53
【问题描述】:

最近添加了这个:

buildToolsVersion '22.0.1'

我正在使用不同的 productFlavors。

android {

    compileSdkVersion 22
    buildToolsVersion '22.0.1'

    defaultConfig {
        applicationId 'com.consulta'
        minSdkVersion 17
        targetSdkVersion 22
        versionCode 14
        versionName '1.0.11'
    }

    signingConfigs {
        release {
            storeFile file("keystore.jks")
            storePassword "******"
            keyAlias "MyAlias"
            keyPassword "******"
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            signingConfig signingConfigs.release
        }
    }
    productFlavors {
        production {
            applicationId "com.app"
            resValue "string", "app_name", "MyApp"
            minSdkVersion 17
            targetSdkVersion 22
        }
        stage {
            applicationId "com.app.stage"
            resValue "string", "app_name", "MyApp.Stage"
            minSdkVersion 17
            targetSdkVersion 22
        }
        freeze {
            applicationId "com.app.freeze"
            resValue "string", "app_name", "MyApp.Freeze"
            minSdkVersion 17
            targetSdkVersion 22
        }
    }

    sourceSets {
        main {
            assets.srcDirs = ['src/main/assets', 'src/main/assets/']
        }
    }


}

dependencies {
 compile fileTree(dir: 'libs', include: ['*.jar'])
'com.android.support:appcompat-v7:22.0.0' 
}

以下是错误:

错误:任务 ':app:dexStageRelease' 执行失败 UNEXPECTED 顶级异常:

com.android.dex.DexIndexOverflowException: 方法 ID 不在 [0, 0xffff]: 65536 在 com.android.dx.merge.DexMerger$6.updateIndex(DexMerger.java:502)
在 com.android.dx.merge.DexMerger$IdMerger.mergeSorted(DexMerger.java:277) 在 com.android.dx.merge.DexMerger.mergeMethodIds(DexMerger.java:491) 在 com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:168)
在 com.android.dx.merge.DexMerger.merge(DexMerger.java:189) 在 com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454) 在 com.android.dx.command.dexer.Main.runMonoDex(Main.java:303)
在 com.android.dx.command.dexer.Main.run(Main.java:246) 在 com.android.dx.command.dexer.Main.main(Main.java:215) 在 com.android.dx.command.Main.main(Main.java:106)

【问题讨论】:

    标签: java android build-tools


    【解决方案1】:

    你找到了神话般的 65k 方法硬帽

    https://developer.android.com/tools/building/multidex.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-02
      • 1970-01-01
      • 1970-01-01
      • 2013-01-29
      • 1970-01-01
      • 1970-01-01
      • 2021-08-01
      相关资源
      最近更新 更多