Android gradle构建脚本在preDexDebug中返回错误137

时间:2014-04-03 21:53:09

标签: android jenkins gradle

我正在尝试使用gradlew在我们的Debian构建服务器上构建一个Android项目。

每次运行它时,preDexDebug步骤的构建都会失败,并显示错误137和以下错误。我尝试了堆栈跟踪,但这并没有给我任何更多的信息,除了它是一个未处理的异常。在控制台中,我可以看到preDexDebug构建步骤失败率为39%。

:Carpool:preDexDebug FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':Carpool:preDexDebug'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
        /opt/android-sdk-linux/build-tools/19.0.3/dx --dex --output /var/lib/jenkins/jobs/Project/workspace/com.app.space/Carpool/build/pre-dexed/debug/classes-c1baba1a2bb3528538a151852945d1f7047c7393.jar /var/lib/jenkins/jobs/Project/workspace/com.app.space/Carpool/build/exploded-aar/com.google.android.gms/play-services/4.0.30/classes.jar
  Error Code:
        137

构建脚本:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.9.+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.3"

    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 19
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}

dependencies {
    compile 'com.android.support:support-v4:19.1.0'
    compile 'com.android.support:gridlayout-v7:19.1.0'
    compile 'com.android.support:appcompat-v7:19.1.0'
    compile 'com.google.android.gms:play-services:4.0.30'
}

关于这个问题的原因,解决方法或我可以做的额外检查的任何想法?

2 个答案:

答案 0 :(得分:6)

问题是由于构建服务器上的内存问题。切换到具有更多内存的构建服务器已解决了这个问题。

答案 1 :(得分:0)

是的,我遇到过这个问题。我发现问题是由于配置内存错误导致dx.bat无法运行。更改"设置defaultXmx = -Xmx1024m" to"设置defaultXmx = -Xmx512m"并再次运行。参考链接我找到了它:https://code.google.com/p/vs-android/issues/detail?id=15。希望这有帮助。