web-dev-qa-db-ja.com

app:transformDexArchiveWithExternalLibsDexMergerForDebug in Android studio 3.0.1

Gradleビルドメッセージ:

エラー:タスク ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'の実行に失敗しました。

Java.lang.RuntimeException:com.Android.builder.dexing.DexArchiveMergerException:dexをマージできません

gradleビルドファイルは次のとおりです。

apply plugin: 'com.Android.application'

    Android {

        compileSdkVersion 26
        defaultConfig {

            minSdkVersion 26
            targetSdkVersion 26
            versionCode 1
            versionName "1.0"
            testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
            multiDexEnabled true

        }
        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'
        implementation files('libs/bsh-core-2.0b4.jar')
        implementation files('libs/Selenium-Java-2.3.0.jar')
        implementation files('libs/Selenium-remote-driver-3.0.0.jar')
        // https://mvnrepository.com/artifact/io.appium/Java-client
        implementation  group: 'io.appium', name: 'Java-client', version: '5.0.4'

    }
7
sanjay sen

このエラーは一般的なもので、多くの原因で発生する可能性があります

Java.lang.RuntimeException:com.Android.builder.dexing.DexArchiveMergerException:dexをマージできません

まず、あなたが持っているエラーを知る必要があります。したがって、2つの選択肢があります。

  • CMD:Android workspaces and putgradlew installDebug --stacktrace(オプション--info --debug)
  • プロジェクトの実行またはビルド:ファイル>設定>ビルド、実行、展開>コンパイラに移動し、コマンドラインオプションに書き込みます:-stacktrace --debug

次に、原因が表示されている部分に移動する必要があります(uは複数のエラーが発生する可能性があるため、最後の時点)。

あなたが持っている場合:

原因:com.Android.dex.DexIndexOverflowException:[0、0xffff]にないメソッドID:65536

次に、前述のコメントのようにこれを配置する必要がありますが、mindSdkVersion> = 21

Android {
    defaultConfig 
    {
        multiDexEnabled true
    }
}

あなたのminSdkVersion <21の場合、これも置く必要があります

compile 'com.Android.support:multidex:1.0.3'

詳細 こちら

1

私の場合、問題は重複パッケージでした。反応ネイティブリンクを使用しましたが、アプリはパッケージがリンクされていることを認識しなかったため、パッケージの複製を作成しました。

重複パッケージがMainApplication.Javaで生成されました-インポートとクラスの初期化。

また、settings.gradleとbuild.gradle/appを確認してください-アプリケーションを壊す重複パッケージが存在する可能性があります。

0
Celestial

build.gradle(Module: app)ファイルでこれを試してください:

Android {
    defaultConfig 
    {
        ...
        multiDexEnabled true
    }
}
0
user1791389