当我尝试运行我的Android应用程序时出现此错误
错误:任务':app:transformDexArchiveWithExternalLibsDexMergerForDebug'的执行失败。 java.lang.RuntimeException:java.lang.RuntimeException:com.android.builder.dexing.DexArchiveMergerException:无法合并dex
我试图清理项目并重建项目并尝试删除项目,但同样的错误无法解决 gradle这个
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "com.example.lef.planeeye"
minSdkVersion 14
targetSdkVersion 26
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(dir: 'libs', include: ['*.jar'])
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'
compile 'com.google.android.gms:play-services:11.6.0'
compile 'com.android.volley:volley:1.0.0'
compile 'com.google.android.gms:play-services-location:11.6.0'
compile 'com.google.android.gms:play-services-maps:11.6.0'
compile 'com.android.support:design:26.1.0'
compile 'com.google.firebase:firebase-core:11.6.0'
compile 'com.google.firebase:firebase-messaging:11.6.0'
compile 'com.firebase:firebase-client-android:2.5.2'
compile 'com.firebaseui:firebase-ui:0.2.0'
}
答案 0 :(得分:0)
您需要启用多索引
在您的gradl.build文件中设置multiDexEnabled true
并将compile 'com.android.support:multidex:1.0.1'
添加到您的依赖项
以下是我的应用
android {
compileSdkVersion 26
buildToolsVersion '26.0.2'
defaultConfig {
multiDexEnabled true
applicationId ""
minSdkVersion 14
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
答案 1 :(得分:0)
开始添加multi dex并将应用程序更改为multidexapplication之前。考虑最小化您对所需依赖项的依赖性。您正在导入整个Google Play服务。
只考虑包含你需要的那些,否则你会明确地超过65,536方法限制,这将使你编译得更慢,并且必须调整你的gradle属性以加快内存的速度。
如果您必须执行multi-dex,那么更新您的应用程序扩展MultiDexApplication以及您的gradle属性以增加内存,但希望您不必这样做。
在修补之前尝试正确解决问题;)。
但是,如果它不是多指针问题,那么可能是一个问题,即不同版本的dexing重复依赖性。可能是你的谷歌游戏服务。我会运行assembleRelease --info并获取更多信息。
在此期间,请尝试使用此确切的行强制播放lib版本
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"
tools:replace="android:value" />
在应用程序标记
中