My project contains 3 libraries: calendar_cmcc,Wheel_library and yellowPage_lib.
I can build the project perfectly, but gradle throws an error when I run it.Here is the error:
Error:Execution failed for task ':app:dexDebug'.
com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/home/jim/tools/jdk1.8.0_45/bin/java'' finished with non-zero exit value 3
gradle file list:
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')
}
build.gradle of calendar_cmcc:
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')
}
build.gradle of Wheel_library:
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')
}
build.gradle of yellowPage_lib:
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')
}
Now, All I kown is that the error was cause by calendar_cmcc's build.gradle file.When I change 'compile' to 'provided' of dependencies from calendar_cmcc's build.gradle , it runs fine.
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')
}
changed to
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')
}
but it will cause another error:
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
It seems that the org.mnode.ical4j can't be package in the apk when the gradle build.
I have search the answer on the stackoverflow for many days,but it can't works. So,how should I do? Help,please!thanks!
I re-post the answer of jim.zhang here: (since the first time I view this question, I missed zhang's comment)
Add below configure in build.gradle file.
dexOptions {
javaMaxHeapSize "4g"
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With