gradle以非零退出值3

时间:2015-07-24 08:07:19

标签: android android-gradle build.gradle

我的项目包含3个库: calendar_cmcc Wheel_library yellowPage_lib

我可以完美地构建项目,但gradle会在运行时抛出错误。这就是错误:

Error:Execution failed for task ':app:dexDebug'.
  

com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程'命令'/home/jim/tools/jdk1.8.0_45/bin/java''以非完成零退出值3

gradle文件列表:

app's build.gradle:

apply plugin: 'com.android.application'

        android {

            compileSdkVersion 21
            buildToolsVersion '21.1.2'

            defaultConfig {
                applicationId "cn.com.geartech.app"
                minSdkVersion 17
                targetSdkVersion 19
                versionCode 100 //from 20 to 21
                //cmcc0000522 is 26
                //0608 is
                // 27
                //0615 is 27
                //0616 is 27
                //1.2.20 36
                versionName "1.2.26.10"
                multiDexEnabled = true
            }
            buildTypes {
                release {
                    minifyEnabled false
                    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                }

                debug {
                    signingConfig signingConfigs.deb
                }
            }
            packagingOptions {
                exclude 'META-INF/DEPENDENCIES'
                exclude 'META-INF/NOTICE'
                exclude 'META-INF/LICENSE'
                exclude 'META-INF/LICENSE.txt'
                exclude 'META-INF/NOTICE.txt'
                exclude 'META-INF/ASL2.0'
            }
            sourceSets {
                main {
                    jniLibs.srcDir 'src/main/libs'
                }
            }
            compileOptions {
                sourceCompatibility JavaVersion.VERSION_1_7
                targetCompatibility JavaVersion.VERSION_1_7
            }
        }

        dependencies {
            compile 'com.android.support:support-v4:20.+'
            compile 'com.android.support:recyclerview-v7:21.0.0'
            compile 'com.daimajia.swipelayout:library:1.2.0@aar'
            compile 'jp.wasabeef:recyclerview-animators:1.0.3@aar'
            compile fileTree(include: ['*.jar'], dir: 'libs')
            compile files('src/main/libs/commons-io-2.4.jar')
            compile files('src/main/libs/httpmime-4.1.1.jar')
            compile files('src/main/libs/pinyin4j-2.5.0.jar')
            compile files('src/main/libs/universal-image-loader-1.9.3-with-sources.jar')
            compile files('src/main/libs/zxing.jar')
            compile 'com.sothree.slidinguppanel:library:3.0.0'
            compile files('src/main/libs/cmcc-sso-sdk.jar')
            compile files('src/main/libs/cmcc-sso.jar')
            compile files('src/main/libs/cmcc_enc.jar')
            compile files('src/main/libs/AOE_20140617_001.jar')
            compile files('src/main/libs/sync_sdk_ydyjyxgh_20150304.jar')
            compile files('src/main/libs/fastjson-1.2.5.jar')
            compile project(':yellowPage_lib')
            compile project(':Wheel_library')
            compile project(':calendar_cmcc')
            compile files('src/main/libs/pinyin4j.jar')
            compile files('src/main/libs/gcordSDK.jar')
        }

calendar_cmcc 的build.gradle:

apply plugin: 'com.android.library'

    android {
        compileSdkVersion 21
        buildToolsVersion "21.1.2"

        defaultConfig {
            minSdkVersion 17
            targetSdkVersion 17
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
        productFlavors {
        }
        lintOptions {
            abortOnError false
        }
        packagingOptions {
            exclude 'META-INF/LICENSE.txt'
            exclude 'META-INF/NOTICE.txt'
        }
    }
    configurations.all {
        exclude module: 'commons-logging'
    }
    dependencies {
        compile fileTree(include: ['*.jar'], dir: 'libs')
        compile 'commons-lang:commons-lang:2.6'
        compile 'commons-io:commons-io:2.4'
        compile 'org.projectlombok:lombok:1.14.8'
        compile 'org.mnode.ical4j:ical4j:1.0.6'
        compile('com.googlecode.ez-vcard:ez-vcard:0.9.6') {
            exclude group: 'org.jsoup', module: 'jsoup'
            exclude group: 'org.freemarker', module: 'freemarker'
            exclude group: 'com.fasterxml.jackson.core', module: 'jackson-core'
        }
        compile 'dnsjava:dnsjava:2.1.6'
        compile files('lib/httpclient-android-4.3.5.2-davdroid1.jar')
        compile('org.simpleframework:simple-xml:2.7.1') {
            exclude group: 'stax', module: 'stax-api'
            exclude group: 'xpp3', module: 'xpp3'
        }
        compile 'com.android.support:appcompat-v7:18.0.0'
        compile files('libs/android-common-chips.jar')
        compile files('libs/android-common.jar')
        compile files('libs/calendar-common.jar')
    }

Wheel_library 的build.gradle:

    apply plugin: 'com.android.library'
    android {
        compileSdkVersion 21
        buildToolsVersion '21.1.2'

        defaultConfig {
            minSdkVersion 17
            targetSdkVersion 19
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }

    dependencies {
        compile fileTree(include: ['*.jar'], dir: 'libs')
    }

yellowPage_lib 的build.gradle:

        apply plugin: 'com.android.library'

        android {
            compileSdkVersion 21
            buildToolsVersion '21.1.2'

            defaultConfig {
                minSdkVersion 8
                targetSdkVersion 19
            }

            buildTypes {
                release {
                    minifyEnabled false
                    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
                }
            }
        }

        dependencies {
            compile 'com.android.support:support-v4:19.+'
            compile files('libs/BaiduLBS_Android.jar')
            compile files('libs/YellowPage_SDK.jar')
        }

现在,我所知道的是错误是由 calendar_cmcc的 build.gradle文件引起的。当我从 calendar_cmcc 构建中将'compile'更改为'提供'的依赖项时.gradle,它运行良好。

dependencies {
        compile fileTree(include: ['*.jar'], dir: 'libs')
        compile 'commons-lang:commons-lang:2.6'
        compile 'commons-io:commons-io:2.4'
        compile 'org.projectlombok:lombok:1.14.8'
        compile 'org.mnode.ical4j:ical4j:1.0.6'
        compile('com.googlecode.ez-vcard:ez-vcard:0.9.6') {
            exclude group: 'org.jsoup', module: 'jsoup'
            exclude group: 'org.freemarker', module: 'freemarker'
            exclude group: 'com.fasterxml.jackson.core', module: 'jackson-core'
        }
        compile 'dnsjava:dnsjava:2.1.6'
        compile files('lib/httpclient-android-4.3.5.2-davdroid1.jar')
        compile('org.simpleframework:simple-xml:2.7.1') {
            exclude group: 'stax', module: 'stax-api'
            exclude group: 'xpp3', module: 'xpp3'
        }
        compile 'com.android.support:appcompat-v7:18.0.0'
        compile files('libs/android-common-chips.jar')
        compile files('libs/android-common.jar')
        compile files('libs/calendar-common.jar')
    }

更改为

dependencies {
        compile fileTree(include: ['*.jar'], dir: 'libs')
        compile 'commons-lang:commons-lang:2.6'
        compile 'commons-io:commons-io:2.4'
        provided 'org.projectlombok:lombok:1.14.8'
        provided 'org.mnode.ical4j:ical4j:1.0.6'
        provided ('com.googlecode.ez-vcard:ez-vcard:0.9.6') {
            exclude group: 'org.jsoup', module: 'jsoup'
            exclude group: 'org.freemarker', module: 'freemarker'
            exclude group: 'com.fasterxml.jackson.core', module: 'jackson-core'
        }
        compile 'dnsjava:dnsjava:2.1.6'
        compile files('lib/httpclient-android-4.3.5.2-davdroid1.jar')
        compile('org.simpleframework:simple-xml:2.7.1') {
            exclude group: 'stax', module: 'stax-api'
            exclude group: 'xpp3', module: 'xpp3'
        }
        compile 'com.android.support:appcompat-v7:18.0.0'
        compile files('libs/android-common-chips.jar')
        compile files('libs/android-common.jar')
        compile files('libs/calendar-common.jar')
    }

但会导致另一个错误:

07-24 15:54:41.991   32166-1373/cn.com.geartech.app E/dalvikvm﹕ Could not find class 'net.fortuna.ical4j.model.DefaultTimeZoneRegistryFactory', referenced from method at.bitfire.davdroid.resource.Event.<clinit>
    07-24 15:54:42.001   32166-1373/cn.com.geartech.app E/dalvikvm﹕ Could not find class 'net.fortuna.ical4j.data.CalendarBuilder', referenced from method at.bitfire.davdroid.resource.Event.TimezoneDefToTzId
    07-24 15:54:42.021   32166-1373/cn.com.geartech.app E/dalvikvm﹕ Could not find class 'net.fortuna.ical4j.util.UidGenerator', referenced from method at.bitfire.davdroid.resource.Event.generateUID
    07-24 15:54:42.061   32166-1373/cn.com.geartech.app E/dalvikvm﹕ Could not find class 'net.fortuna.ical4j.data.CalendarBuilder', referenced from method at.bitfire.davdroid.resource.Event.parseEntity

当gradle构建时,似乎 org.mnode.ical4j 无法在apk中打包。

我已经在stackoverflow上搜索了很多天的答案,但它无法正常工作。 那么,我该怎么办?帮助,请!谢谢!

1 个答案:

答案 0 :(得分:18)

我在这里重新发布了jim.zhang的答案: (自从我第一次看到这个问题,我就错过了张的评论)

在build.gradle文件中添加以下配置。

dexOptions {
    javaMaxHeapSize "4g"
}