奇数DexArchiveMergerException

我以前遇到过这个问题,并且能够很容易地修复它。但是,这一次,我不明白是什么原因造成的。自从它工作以来,对build.gradle的唯一改动是implementation project(':sharedfiles')--一个用于穿戴/移动的共享通用模块。我没有添加这个,我将该模块添加为依赖项,并且该行被自动添加,所以我怀疑它是一个错误。我有multipleDexEnabled true,无法找到任何冲突的依赖关系。任何帮助将不胜感激,这是我第一次使用通用模块。这里是两个build.gradle文件。奇数DexArchiveMergerException

移动模块

apply plugin: 'com.android.application' 

android {

compileSdkVersion 26

defaultConfig {

applicationId "bhprograms.supremis"

minSdkVersion 23

targetSdkVersion 26

multiDexEnabled true

versionCode 1

versionName "1.0"

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

}

}

}

dependencies {

implementation fileTree(include: ['*.jar'], dir: 'libs')

implementation 'com.android.support:appcompat-v7:26.1.0'

implementation 'com.android.support.constraint:constraint-layout:1.0.2'

testImplementation 'junit:junit:4.12'

androidTestImplementation 'com.android.support.test:runner:1.0.1'

androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'

wearApp project(':wear')

implementation 'com.google.android.gms:play-services-wearable:+'

implementation files('libs/gson.jar')

implementation project(':sharedfiles')

}

公用模块

apply plugin: 'com.android.library' 

android {

compileSdkVersion 26

defaultConfig {

minSdkVersion 23

targetSdkVersion 26

versionCode 1

multiDexEnabled true

minSdkVersion 23

targetSdkVersion 26

versionName "1.0"

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

}

}

}

dependencies {

implementation fileTree(dir: 'libs', include: ['*.jar'])

implementation 'com.android.support:appcompat-v7:26.1.0'

testImplementation 'junit:junit:4.12'

androidTestImplementation 'com.android.support.test:runner:1.0.1'

androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'

implementation files('libs/gson.jar')

}

,当然,错误。

Error:Execution failed for task ':mobile:transformDexArchiveWithExternalLibsDexMergerForDebug'. 

> com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex

回答:

通过在移动模块中删除implementation files('libs/gson.jar')来解决。不知道为什么这会修复它,可能是因为我没有在移动模块中使用这个jar。如果实验性功能无法正常工作,我将来可能需要它,但这是导致此问题的原因。

以上是 奇数DexArchiveMergerException 的全部内容, 来源链接: utcz.com/qa/259604.html

回到顶部