Ошибка: Ошибка преобразования байт-кода в dex: Причина: com.android.dex.DexException: несколько файлов dex определяют Lokhttp3/internal/http/RealResponseBody;

#android #android-multidex

#Android #android-multidex

Вопрос:

Я получаю сообщение об ошибке после создания проекта, подобного..

Ошибка: Ошибка преобразования байт-кода в dex: Причина: com.android.dex.DexException: несколько файлов dex определяют Lokhttp3/internal/http/RealResponseBody; Ошибка: com.android.dex.DexException: несколько файлов dex определяют Lokhttp3/internal/http/RealResponseBody; Ошибка: в com.android.dx.слияние.DexMerger.readSortableTypes(DexMerger.java:661) Ошибка: в com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:616) Ошибка: в com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:598) Ошибка: в com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171) Ошибка: в com.android.dx.merge.Ошибка DexMerger.merge(DexMerger.java:198): в com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:61) Ошибка: в com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:36) Ошибка: в java.util.concurrent.ForkJoinTask$AdaptedCallable.exec(ForkJoinTask.java:1424) Ошибка: в java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) Ошибка: в java.util.concurrent.ForkJoinPool $WorkQueue.RunTask(ForkJoinPool.java:1056) Ошибка: в java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java: 1692) Ошибка: на java.util.concurrent.Ошибка ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157): не удалось выполнить задачу ‘: app:transformDexArchiveWithDexMergerForDebug’.

com.android.build.api.transform.Исключение TransformException: com.android.dex.DexException: несколько файлов dex определяют Lokhttp3 /internal /http/ RealResponseBody; Информация: СБОЙ СБОРКИ за 2m 51s Информация: 15 ошибок Информация: 0 предупреждений Информация: Смотрите Полный вывод в консоли

это мой файл gradle сборки.

 apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.example.kamran.logingreentheme"
        minSdkVersion 17
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        useLibrary 'org.apache.http.legacy'
        multiDexEnabled true

        configurations {
            all {
               // exclude module: 'httpclient'
                resolutionStrategy {
                    force 'junit:junit:4.11'
                    force 'com.android.support:support-annotations:28.0.0'
                }
            }
        }
        packagingOptions {
            exclude 'META-INF/DEPENDENCIES'
            exclude 'META-INF/LICENSE'
            exclude 'META-INF/LICENSE.txt'
            exclude 'META-INF/license.txt'
            exclude 'META-INF/NOTICE'
            exclude 'META-INF/NOTICE.txt'
            exclude 'META-INF/notice.txt'
            exclude 'META-INF/ASL2.0'
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    sourceSets { main { res.srcDirs = ['src/main/res', 'src/main/res/menu'] } }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:recyclerview-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:2.0.4'
    implementation 'com.android.support:exifinterface:28.0.0'
    implementation 'com.android.support:cardview-v7:28.0.0'
    implementation 'com.android.volley:volley:1.1.1'
    //implementation 'org.apache.httpcomponents:httpcore:4.4.1'
   // implementation 'org.apache.httpcomponents:httpmime:4.2.3'
    implementation 'com.squareup.picasso:picasso:2.71828'
    implementation 'com.googlecode.json-simple:json-simple:1.1.1'
    implementation 'com.android.support:multidex:1.0.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    androidTestImplementation 'com.android.support:support-annotations:28.0.0'
}

 

вещи, которые я пробовал

 1.clean ,rebuild
2.invalidate catch restart
3.multiplexEnabled **true** also add dependencies:implementation 'com.android.support:multidex:1.0.3'
 

кто-нибудь может повторно исправить мою ошибку? кто-нибудь может объяснить, почему я получаю эту ошибку??

Комментарии:

1. ваш проект переопределяет класс приложения?

2. @d-feverx нет.но я установил это-> android:name=»android.support.multidex.MultiDexApplication» в мой файл menifest под тегом application

3. просто попробуйте с классом приложения, developer.android.com/studio/build/multidex

4. @d-feverx что делать, если я не хочу переопределять.но я редактирую свой файл menifest, чтобы установить android:name в теге <application> следующим образом:android:name=»android.support.multidex.MultiDexApplication»

Ответ №1:

Добавить в gradle.property эту строку:

 org.gradle.jvmargs=-Xmx1024m
 

После этого очистите и перестройте проект.