web-dev-qa-db-ja.com

エラー:タスク ':app:transformClassesWithMultidexlistForDebug'の実行に失敗しましたAndroid studio

プロジェクトをエクスポートしたビルドボックスでゲームを作成しましたが、Android studio)でゲームを開始できません私の問題は、アプリケーションを実行できないか、apkファイルを生成できないことです

誰かが私を助けてくれます。

エラー

エラー:タスク ':app:transformClassesWithMultidexlistForDebug'の実行に失敗しました。 Java.io.IOException:[C:\ Users\youne\Desktop\Android2\app\build\Intermediates\multi-dex\debug\componentClasses.jar]を書き込めません([C:\ Users\youneを読み込めません.gradle\caches\transforms-1\files-1.1\support-core-ui-25.2.0.aar\9adfc8649fc899fbc5e371e8bc1c399a\jars\classes.jar(;;;;;; **。class)](重複するZipエントリ[ classes.jar:Android/support/v4/view/ViewPager $ 2.class]))

使ってます

Android Studio 3.0

Javaバージョン:Java(TM)SEランタイム環境(ビルド1.8.0_73-b02)。

Gradleバージョン:com.Android.tools.build:gradle:4.1

そして私はMultidexを有効にしました

私のアプリのbuild.gradleファイル:

Android {
  compileSdkVersion 27
  buildToolsVersion '27.0.1'

  defaultConfig {
    applicationId "com.drh.bird"
    minSdkVersion 14
    targetSdkVersion 23
    aaptOptions.cruncherEnabled = false
    aaptOptions.useNewCruncher = false
    compileOptions.encoding = 'ISO-8859-1'
    multiDexEnabled = true

    ndk {
      moduleName "player_shared"
    }
  }
  Android {
    useLibrary 'org.Apache.http.legacy'
  }
  sourceSets {
    main {
      jni.srcDirs = []
    }
  }

  buildTypes {}
  Android {
    defaultConfig {
      multiDexEnabled true
    }
  }
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_7
    targetCompatibility JavaVersion.VERSION_1_7
  }

  buildTypes {
    release {
      minifyEnabled false
      proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
    }
  }
}

dependencies {
  compile 'com.Android.support:multidex:1.0.1'
  compile 'com.google.Android.gms:play-services:+'
  compile files('libs/dagger-1.2.2.jar')
  compile files('libs/javax.inject-1.jar')
  compile files('libs/nineoldandroids-2.4.0.jar')
  compile files('libs/support-v4-19.0.1.jar')
}
5
Younss Drhouj
implementation 'com.Android.support:appcompat-v7:27.1.0'
 implementation 'com.Android.support:design:27.1.0'
    implementation 'com.Android.support:support-v4:27.1.0'
 implementation 'com.Android.support:recyclerview-v7:27.1.0'

上記のようにすべてのサポートライブラリを27.1.0に更新し、重複を削除します

8
Ashwin H

compile files('libs/support-v4-19.0.1.jar')compileSdkVersion 27と一緒に使用しようとしています。ただし、サポートライブラリのメジャーバージョンはcompileSdkVersionと同じである必要があります

代わりにimplementation "com.Android.support:support-v4:27.0.1"を使用してください

また、依存関係バージョンでは+を使用しないでください。依存関係が更新されると、問題が発生する可能性があります

1
DeKaNszn

これは、サポートライブラリが競合しているためです。 compileSdkVersionbuildToolsVersiontargetSdkVersion、およびsupport libraryには常に同じバージョンコードを使用する必要があります。

でjarファイルを使用しないでください

compile files('libs/support-v4-19.0.1.jar')

代わりに、次のようにcompileSdkVersionと一致するサポートライブラリを使用する必要があります。

implementation 'com.Android.support:support-v4:27.1.0'

また、Play開発者サービスの正確なバージョンを使用し、特定の個別のAPIを使用していることを確認する必要があります。このようではありません:

compile 'com.google.Android.gms:play-services:+'

しかし、このようなもの:

// if you're using only ads
implementation 'com.google.Android.gms:play-services-ads:12.0.0'

これにより、メソッドの数が少なくなり、multidexを削除できます。

最終的に、build.gradleは次のようになります。

Android {
  compileSdkVersion 27
  buildToolsVersion '27.0.1'

  defaultConfig {
    applicationId "com.drh.bird"
    minSdkVersion 14
    targetSdkVersion 27
    aaptOptions.cruncherEnabled = false
    aaptOptions.useNewCruncher = false
    compileOptions.encoding = 'ISO-8859-1'
    //multiDexEnabled = true

    ndk {
      moduleName "player_shared"
    }
  }
  Android {
    useLibrary 'org.Apache.http.legacy'
  }
  sourceSets {
    main {
      jni.srcDirs = []
    }
  }

  buildTypes {}
  Android {
    defaultConfig {
      //multiDexEnabled true
    }
  }
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_7
    targetCompatibility JavaVersion.VERSION_1_7
  }

  buildTypes {
    release {
      minifyEnabled false
      proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
    }
  }
}

dependencies {
  //compile 'com.Android.support:multidex:1.0.1'
  implementation 'com.google.Android.gms:play-services:play-services-ads:12.0.0'
  implementation 'com.Android.support:support-v4:27.1.0'

  compile files('libs/dagger-1.2.2.jar')
  compile files('libs/javax.inject-1.jar')
  compile files('libs/nineoldandroids-2.4.0.jar')
  //compile files('libs/support-v4-19.0.1.jar')
}