【问题标题】:Android Studio Execution failed for task ':app:preDexDebug' [duplicate]任务':app:preDexDebug'的Android Studio执行失败[重复]
【发布时间】:2015-01-12 11:00:27
【问题描述】:

我的构建应用程序发生了这种奇怪的行为。

奇怪的是这个com.nineoldandroids是一个来自android资源库的jar。

我试图删除构建源并再次重新编译,但没有成功。

我的 buildgradle:

buildscript {
    repositories {
        maven { url 'http://download.crashlytics.com/maven' }
    }

    dependencies {
        classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'crashlytics'

repositories {
    maven { url 'http://download.crashlytics.com/maven' }
}

android {
    compileSdkVersion 21
    buildToolsVersion "20.0.0"

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    defaultConfig {
        applicationId "xxxxxxxx"
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        debug {
            // enable crashlytics where you need
            buildConfigField "boolean", "USE_CRASHLYTICS", "false"
            ext.enableCrashlytics = false
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile project(':library_refreshaction_appcompat')
    compile project(':EnhancedListView')
    compile project(':library_numberpicker')
    compile project(':materialDesign')
    compile project(':library_typeface')
    compile project(':library_updatechecker')
    compile 'com.android.support:appcompat-v7:21.0.0'
    compile 'com.android.support:support-v4:21.0.0'
    compile 'com.crashlytics.android:crashlytics:1.+'
    compile 'se.emilsjolander:stickylistheaders:2.5.0'
    compile files('libs/Parse-1.7.1.jar')
    compile files('libs/BixolonPrinter.jar')
    compile files('libs/bolts-android-1.1.3.jar')
    compile files('libs/core-3.1.0.jar')
    compile files('libs/gson-2.2.4.jar')
    compile files('libs/universal-image-loader-1.9.2.jar')
    compile files('libs/VposAPI.jar')
    compile project(':android-support-v4-preferencefragment-master')
}

错误日志:

Error:Execution failed for task ':app:preDexDebug'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    /Users/Marcus/Downloads/adt-bundle-mac-x86_64-20140702/sdk/build-tools/21.0.2/dx --dex --output /Users/Marcus/Workspace/android-pdv/app/build/intermediates/pre-dexed/debug/library-2.4.0-c0bb3fabf202a58f481b22d99eb3ba9b89fd232d.jar /Users/Marcus/.gradle/caches/modules-2/files-2.1/com.nineoldandroids/library/2.4.0/e9b63380f3a242dbdbf103a2355ad7e43bad17cb/library-2.4.0.jar
  Error Code:
    139

【问题讨论】:

标签: android build android-studio android-gradle-plugin


【解决方案1】:

正如@zapl Cannot build android project using Android Studio - Gradle 1.7 所链接的那样,这是一种奇怪的行为,没有唯一的解决方法,正如本文所述。

我不能确切地说我做了什么来解决它,因为我尝试了很多东西直到它消失。

但正如帖子中所说,这是这样的:

  • 格式错误的资源(缺少属性、错误标签等...)
  • +样式中的id
  • 重复的资源/库
  • Declare-Style 能够缺少名称
  • 资源不匹配,尝试使用不同的 AAPT 版本。

未知,就像我的一样。所以这将是有用的:

  1. 找到一种方法来确定此错误的真正原因
  2. 等待返回一些错误消息的 AAPT 更新
  3. 列出可能的常见原因。

【讨论】:

  • 成功了!重复的库...
【解决方案2】:

我遇到了同样的问题,只需重新启动 Android Studio 即可解决。

我只能猜测原因,但我认为这是因为我在模拟器仍在启动时启动了我的应用程序。

【讨论】:

  • 找了半个小时才找到这个提示...
【解决方案3】:

好像您已经安装了 build-tools 21.0.2 但您在 gradle buildTootlsVersion 中使用的是 20.0.0 此外,您还定义了两次 repositories,您只需要在第一个 gradle 块中使用它。

尝试更改构建工具版本。

【讨论】:

  • 我已经设置了 build-tools 21.0.2 ,我只是尝试了很多其他的,但仍然是同样的错误,它有时说问题出在另一个库 jar 上
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-07-13
  • 2016-02-19
  • 2015-05-23
  • 2016-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多