Android Studio 3.0: Abhängigkeit kann nicht aufgelöst werden für: app @ dexOptions / compileClasspath ': Projekt: Animatoren konnten nicht aufgelöst werden

163

Ich migriere zu Android Studio 3.0. Das Projekt kann also kein Modul mit dem Namen ": animator" kompilieren und zeigt mir diesen Fehler an:

 Error:Unable to resolve dependency for
 ':app@dexOptions/compileClasspath': Could not resolve project
 :animators. <a
 href="openFile:/home/mobilepowered/MobilePowered/MyInnovalee/trunk17-10-2017/app/build.gradle">Open
 File</a><br><a href="Unable to resolve dependency for
 &#39;:app@dexOptions/compileClasspath&#39;: Could not resolve project
 :animators.">Show Details</a>

und Details anzeigen gibt dieses Protokoll:

 Unable to resolve dependency for ':app@dexOptions/compileClasspath':
 Could not resolve project :animators.

 Could not resolve project :animators. Required by:
     project :app
 Unable to find a matching configuration of project :animators:
      - Configuration 'debugApiElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'debug'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'debug' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found compatible value 'java-api'.
      - Configuration 'debugRuntimeElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'debug'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'debug' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found incompatible value 'java-runtime'.
      - Configuration 'releaseApiElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'release'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'release' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found compatible value 'java-api'.
      - Configuration 'releaseRuntimeElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'release'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'release' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found incompatible value 'java-runtime'.
Imene Noomene
quelle
was hast du getan?
Pandiri Deepak
Als erste und vorübergehende Lösung, um das Projekt mit Android Studio 3.0 auszuführen , verwalte ich DistributionUrl = https \: //services.gradle.org/distributions/gradle-3.3-all.zip , compileSdkVersion 25 und buildToolsVersion "25.0.3" und Klassenpfad 'com.android.tools.build:gradle:2.3.3'
Imene Noomene
@ImeneNoomene, JackHuangs Antwort sollte die gewählte Antwort sein. Es basiert auf offizieller Dokumentation, und was Sackurise sagt, ist nicht immer machbar (denken Sie an React Native-Projekte, bei denen die meisten Ihrer Module aus dem Web stammen)
Leo unterstützt Monica Cellio
Ich stoße auf dieses Problem aufgrund der Multi-Flavour-Bibliothek. Gelöst von: stackoverflow.com/a/48718124/1099884
Yeung
Ich habe mein Problem durch einfaches Aktualisieren Android Studio
behoben

Antworten:

145

Mit Android Studio 2.3 (AS) funktioniert das Projekt einwandfrei und ich kann die App ausführen. Nach dem Update des AS auf Android Studio 3.0. Ich habe auch den Fehler wie unten für Bibliotheken und Build-Typen.

Unable to resolve dependency for ':app@dexOptions/compileClasspath': Could not resolve project : library_Name.

Unable to resolve dependency for ':app@release/compileClasspath': Could not resolve project : library_Name.

Um das Problem einfach zu lösen.

Was auch immer der

buildTypes{
          debug{ ... }
          release{ ... }
    }

Sie haben in Ihrer (App) build.gradle- Datei, Sie müssen alle buildTypes{ }mit den gleichen Namen wie gleich einfügen

buildTypes{
      debug{ ... }
      release{ ... }
}

in build.gradleDateien aller im Projekt enthaltenen Bibliotheken / Module .

Bereinigen Sie das Projekt und erstellen Sie es neu. Das Problem wird behoben.

Immer noch nicht behobenes Problem, aktualisieren Sie die gradle-wrapper.properties auf

distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
Sackurise
quelle
102
Alle buildTypes { }mit den gleichen Namen einschließen ? Worüber redest du?
lolololol ol
10
Ich weiß auch nicht, was das bedeutet.
Sir Neuman
5
developer.android.com/studio/build/… Leider funktioniert dies nicht mehr für moderne Builds
Mochadwi
2
So sehr dies auch Sinn macht, ist dies keine nützliche Antwort ... Ich möchte diesen Build-Typ nicht allen meinen Modulen hinzufügen. Sie haben absolut nichts damit zu tun, irgendwo anders als in meiner App zu sein! und meine App muss wissen, von welchem ​​Fallback-Build-Typ sie die Konfiguration übernehmen soll!
TacB0sS
3
Dies ist eine Lösung, es ist nur eine Problemumgehung. Die @ JackHang-Antwort ist der richtige Weg, um dieses Problem zu lösen ( stackoverflow.com/a/47029361/6600000 )
Keivan Esbati
129

Wie im offiziellen Migrationshandbuch angegeben , tritt dieser Fehler auf, wenn:

Ihre App enthält einen Build-Typ, den eine Bibliotheksabhängigkeit nicht hat

android {
  buildTypes {
      release {
          ...
      }
      dexOptions {
          ...
        // release & debug is in project animators
        matchingFallbacks = ['release', 'debug']
      }
      debug {
          ...
      }
    }
}

Der richtige Ort, um die Informationen zu finden, ist jetzt diese Dokumentation

JackHang
quelle
18
Dies sollte die richtige Antwort sein, wie im offiziellen Migrationsleitfaden erläutert. developer.android.com/studio/build/…
dankbar
3
Dies ist die beste Antwort und hat mein Problem behoben. Ich musste nur MatchingFallbacks = ['release', 'debug'] in Flavours verwenden
Poorya
3
Einfach super! Danke, dass du meinen Tag gerettet hast.
Dmitry Smolyaninov
Gradle 5.1.1. Funktioniert leider nicht, der Fehler ist immer noch der gleiche. Ich habe bereits die gleichen buildTypes in der Bibliothek und habe MatchingFallbacks vergeblich zu den Aromen hinzugefügt.
m0skit0
95

Stellen Sie sicher, dass Sie in Ihrem Projekt sind

  1. Öffnen Sie die Einstellungen, indem Sie auf Datei > Einstellungen klicken (auf Mac, Android Studio > Einstellungen ).
  2. Klicken Sie im linken Bereich auf Erstellen, Ausführen, Bereitstellen >> Gradle .
  3. Deaktivieren / deaktivieren Sie das Offline workKontrollkästchen.
  4. Klicken Sie auf Übernehmen oder auf OK .
Beyondo
quelle
2
Die einfachste und beste Antwort
Daksh Agrawal
1
Ich hatte vergessen, dass ich diese Option aktiviert hatte. Vielen Dank
SudoPlz
1
Das sollte die Antwort sein. Vielen Dank, dass Sie meine Zeit gespart haben
Pouya Samie
6
Gilt nicht für lokale Bibliotheken. Option ist bereits deaktiviert und hat immer noch das Problem
Christopher Smit
Eine alte Antwort für Android Studio 3 Frage!
Emad
72

Ich habe viel Zeit mit diesem Thema verbracht und keine der oben genannten Lösungen funktioniert für mich. Die Namen und die Anzahl der Build-Typen waren sowohl im App- als auch im Bibliotheksprojekt genau gleich.

Der einzige Fehler, den ich gemacht habe, war: In build.gradle des Bibliotheksprojekts habe ich line verwendet

Plugin anwenden: 'com.android.application'

Während diese Zeile sein sollte -

Plugin anwenden: 'com.android.library'

Nach dieser Änderung wurde dieser Fehler behoben.

Anuj Garg
quelle
10
Fantastisch! Das war mein Problem. Es ist zu beachten, dass die Anwendungs-ID in defaultConfig {} auch in der Bibliothek entfernt werden muss.
ObjectType
1
Ich wollte gerade diese Antwort veröffentlichen, die ich entdeckte, nachdem ich, wie Sie, harte, frustrierende Arbeit geleistet und alle möglichen Optionen ausprobiert hatte, und noch einige mehr. [Vor dem Posten] Ich habe mich entschlossen, den neuesten Beitrag zu diesem Thema zu sehen und ..voila! Diese Antwort muss irgendwie priorisiert werden.
Nat101
Sumit Kumar
Danke, das ist es.
Musketyr
funktioniert bei mir nicht und auch keine der oben genannten funktioniert nicht
user347187
63

Ändern Sie alle

compile project(':library:yourproject')

zu

implementation project(path: ':library:yourproject', configuration:'default')

in Ihrer App build.gradle. Beachten Sie die Zeile mit der Konfiguration.

Duy Phan
quelle
Ich sehe, dass es jedoch funktioniert, wenn ich zwischen Build-Varianten wechsle: Debug- / Realease-Bibliotheksmodule ändern sich nicht
Uhr
Stolz auf dich, vietnamesischer Entwickler: D Tonne Dank
Long Nguyen
Wenn ich mehr Konfigurationen habe, wissen Sie, ob ich buildTypes unter den Konfigurationsparametern angeben muss?
Alejandro Traver
34

Ich habe alles versucht, von der Deaktivierung der Offline-Arbeit bis hin zu MatchingFallbacks . Aber nichts hat funktioniert.

Dann in Abhängigkeiten von app.gradle ,

anstatt

Implementierungsprojekt (': lib-name')

Ich benutzte,

Implementierungsprojekt (Pfad: ': lib-name', Konfiguration: 'default')

Z.B: implementation project(path:':myService', configuration: 'default')

Und es hat wie ein Zauber funktioniert. :) :)

Ich habe ein Abhängigkeitsmodul mit Service hinzugefügt und mache keine Bibliothek als Teil des AOSP-Projekts .

Nur für den Fall, es hilft jemandem.

Shachi
quelle
4
Dies war das einzige, was für mich funktioniert hat und ich habe mir stundenlang die Haare ausgezogen ... vielen Dank!
Sunny-Mittal
3
Kein Gradle-Fehler auf diese Weise, kann aber immer noch nicht auf die Bibliothek von Java verweisen: /
Nathan Schwermann
3
Vielen Dank, ich musste schließlich für alles, was die Bibliothek hatte, passende Aromen herstellen und es funktionierte.
Nathan Schwermann
1
funktioniert perfekt. Gibt es einen bestimmten Grund für die Konfiguration: Standardoption?
Radhey
1
Kein Gradle-Fehler auf diese Weise, kann aber immer noch nicht auf die Datei aus dem App-Modul
verweisen
17

Lösung:

Laden Sie die ultimative Version von Gradle herunter

http://services.gradle.org/distributions/

gradle-4.x-rc-1-all.zip.sha256 09-Jan-2018 01:15 +0000 64.00B

Entpacken Sie die Distribution

Gehen Sie zu Android Studio -> Datei -> Einstellungen -> Gradle -> Lokale Gradle-Verteilung verwenden. Durchsuchen Sie die Datei und klicken Sie auf OK

In die gradle: app schreibe dies, Implementierung (Pfad: ': animators', Konfiguration: 'default')

dependencies {
   .
   .
   .


    implementation project(path: ':animators', configuration: 'default')


}
Ignacio_aa
quelle
Ich hatte auch dieses Problem. Aber was ist der Unterschied zwischen implementation project(path: ':animators', configuration: 'default')und implementation project(path: ':animators')(dies erzeugt Androidstudio, funktioniert aber nicht)
Andreas
10

So habe ich mein Problem gelöst:

anstatt

compile project(':library_name')
compile project(':library_name')

in app gradle habe ich verwendet

implementation project(':library_name')
implementation project(':library_name')

Und in meinen Build-Typen zum Beispiel

demoTest {
 .........
}

Ich habe diese Zeile hinzugefügt

demoTest {
   matchingFallbacks = ['debug', 'release']
}
Anik Dey
quelle
7

Ich hatte das gleiche Problem und löste es, indem ich 'mavenCentral ()' zu build.gradle (Project) hinzufügte.

allprojects {
    repositories {
        ...
        mavenCentral()
    }
}
Maybelle Pacate
quelle
7

Mein Problem ist unten

Unable to resolve dependency for ':app@debug/compileClasspath': Could not download rxjava.jar (io.reactivex.rxjava2:rxjava:2.2.2)

Durch Überprüfung gelöst Enable embedded Maven Repository

Geben Sie hier die Bildbeschreibung ein

Shellhub
quelle
5

Sogar ich habe das gleiche Problem konfrontiert.

Ich habe das Problem behoben, indem ich auf die obige Lösung 2 mit dem neuen g‌ radle-4.1 verwiesen habe:

Ich habe die folgenden Gradle-Änderungen vorgenommen. Es scheint, dass das Herunterladen von Ressourcen über maven Amazon mir geholfen hat, das Problem zu beheben. Es gibt Probleme mit der Appcompat-Bibliothek. Überprüfen Sie, ob Appcompat-kompatible Support-Bibliotheken auf Ihr System heruntergeladen wurden. Was ich fühle, es sind einfach die Ressourcen, die nicht über Maven heruntergeladen wurden, was das Problem mit dem Kompilierungsfehler verursacht. Stellen Sie sicher, dass sich die Ressourcen in Ihrem lokalen Laufwerk befinden, um das Problem zu beheben.

Ich habe nur rumgespielt

  1. Maven Amazon URL
repositories {
    maven {
        url "https://s3.amazonaws.com/repo.commonsware.com"
    }
    jcenter()
}
  1. Kompatible Support-Bibliotheken, die auf das Laufwerk heruntergeladen wurden und auf kompatible Bibliotheken in gradle verweisen.
dependencies {
    implementation fileTree(dir: 'libs', include: \['*.jar'\])
    implementation 'com.android.support:appcompat-v7:26.0.0-alpha1'
    implementation  'com.android.support:support-v4:26.0.0-alpha1'
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'

}

Vollständige Datei

        apply plugin: 'com.android.application'

        repositories {
            maven {
                url "https://s3.amazonaws.com/repo.commonsware.com"
            }
            jcenter()
        }

        android {
            compileSdkVersion 26
            defaultConfig {
                applicationId "com.cognizant.interviewquestions.cognizantiqpractice2"
                minSdkVersion 18
                targetSdkVersion 26
                versionCode 1
                versionName "1.0"

                javaCompileOptions {
                    annotationProcessorOptions {
                        includeCompileClasspath false
                    }
                }

                dexOptions {
                    javaMaxHeapSize "4g"
                    preDexLibraries = false
                }
            }

            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.0.0-alpha1'
            implementation  'com.android.support:support-v4:26.0.0-alpha1'
            implementation 'com.android.support.constraint:constraint-layout:1.0.2'

        }
---------------------------------------------------------------------------

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Arvind Anandala
quelle
5

Ändern Sie diesen Code in Gradle:

  compile project(':yourLibrary')

zu

   implementation project(path: ': yourLibrary', configuration:'default')
Maryam Azhdari
quelle
4

Ich habe zwei Arten von Lösungen gefunden:

  1. Lösung mit dem alten g‌ radle-3.3:

    Als erste und vorübergehende Lösung, um das Projekt mit Android Studio 3.0 laufen zu lassen, behalte ich die alte Konfiguration meines vorherigen Android Studio 2.3 bei

    DistributionUrl = https: //services.gradle.org/distributions/g‌ radle-3.3-all.zip, compileSdkVersion 25 ** und ** buildToolsVersion "25.0.3" und Klassenpfad 'com.android.tools.build:gradle: 2.3.3

  2. Lösung mit dem neuen g‌ radle-4.1:

    Um mit den neuen Funktionen von gradle 4.1 und dem Klassenpfad com.android.tools.build:gradle:3.0.0 'zu arbeiten , folgte ich diesem Link https://developer.android.com/studio/build/gradle-plugin-3 -0-0-migration.html . Das sind also meine Implementierungen:

In der Datei gradle-wrapper.properties:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip

In der Datei build.gradledes Projekts:

buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'
        //classpath 'me.tatarka:gradle-retrolambda:3.3.1' remove this line
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

In der Datei build.gradle der App:

apply plugin: 'com.android.application'
//apply plugin: 'me.tatarka.retrolambda' remove this line

repositories {
    maven {
        url "https://s3.amazonaws.com/repo.commonsware.com"
    }
    jcenter()
    mavenCentral()
    maven { url "https://jitpack.io" }
}

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"
    defaultConfig {
        applicationId "com.imennmn.myprojectid"
        minSdkVersion 21
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        /**
         * Enabling multidex support.
         */
        multiDexEnabled true
        missingDimensionStrategy 'minApi' , 'minApi24'

        javaCompileOptions {
            annotationProcessorOptions {
                includeCompileClasspath true
            }
        }

        dexOptions {
            javaMaxHeapSize "4g"
            preDexLibraries = false
        }

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

    lintOptions {
        checkReleaseBuilds false
        abortOnError false
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    configurations.all {
        resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9'
    }

    /**
     * Solve the problem when using multiple free source libs
     * NOTICE or LICENSE files cause duplicates
     */
    packagingOptions {
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/DEPENDENCIES.txt'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/DEPENDENCIES'
        //exclude duplicate butterknife and parceler libs
        exclude 'META-INF/services/javax.annotation.processing.Processor'
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/rxjava.properties'

    }


}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation files('libs/motwin-android-sdk-3.2.0-RELEASE-TLS.jar')
    implementation files('libs/notifmanager-android-lib-3.1.0-RELEASE.jar')
    implementation files('libs/commons-lang-2.4.jar')
    androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    implementation 'com.android.support:appcompat-v7:26.0.2'
    implementation 'com.android.support:support-v4:26.0.2'
    implementation 'com.android.support:design:26.0.2'
    implementation 'com.android.support:multidex:1.0.2'
    api 'com.jakewharton:butterknife:7.0.1'
    implementation 'de.hdodenhof:circleimageview:2.1.0'
    implementation 'com.android.support:percent:26.0.2'
    implementation 'com.google.android.gms:play-services-maps:11.4.2'
    implementation 'com.github.bumptech.glide:glide:3.7.0'
    implementation 'com.google.code.gson:gson:2.8.1'
    testImplementation 'junit:junit:4.12'
    implementation 'com.facebook.rebound:rebound:0.3.8'
    implementation 'com.google.android.gms:play-services-gcm:11.4.2'
    implementation 'io.reactivex.rxjava2:rxjava:2.1.1'
    implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'

    implementation project(':animators')

    // Retrofit2 & XmlConverter
    implementation 'com.squareup.retrofit2:retrofit:2.3.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.1.0'
    implementation 'com.squareup.retrofit2:adapter-rxjava:2.1.0'

    implementation('com.squareup.retrofit2:converter-simplexml:2.3.0') {
        exclude group: 'xpp3', module: 'xpp3'
        exclude group: 'stax', module: 'stax-api'
        exclude group: 'stax', module: 'stax'
    }

    implementation 'com.squareup.okhttp3:okhttp:3.4.1'
    implementation 'com.squareup.okhttp3:logging-interceptor:3.4.1'

    //Library to reports crash
    implementation('ch.acra:acra:4.5.0') {
        exclude group: 'org.json'
    }

    implementation 'com.github.kenglxn.QRGen:android:2.3.0'

}

Im build.gradle des Bibliotheksanimators aktualisiere ich targetSdkVersion auf 26:

apply plugin: 'com.android.library'

android {
  compileSdkVersion 26
  buildToolsVersion '26.0.2'

  defaultConfig {
    minSdkVersion 21
    targetSdkVersion 26
    versionCode 1
    versionName "1.0"
  }
}

dependencies {
  implementation "com.android.support:support-compat:26.0.2"
  implementation "com.android.support:support-core-ui:26.0.2"
  implementation "com.android.support:recyclerview-v7:26.0.2"
}
Imene Noomene
quelle
3

Sie müssen nur die Abhängigkeiten in der Datei app.gradle wie in der alten Datei zurücksetzen

androidTestImplementation 'com.android.support.test:runner:0.5'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:2.2.2'

zu neuem als

androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
Wasif Ali
quelle
3

Stellen Sie sicher, dass Sie "Offline-Arbeit" in den Gradle-Einstellungen deaktiviert habenStellen deaktiviert haben (Einstellung-> Erstellen, Ausführen, Bereitstellen-> Build-Tools-> Gradle).

Ich habe diesen Fehler gemacht. Ich folgte einer Anleitung zum Beschleunigen von Gradle-Builds und hatte die Option Offline-Arbeit aktiviert. Wenn dies aktiviert ist, kann Gradle keine neuen Abhängigkeiten herunterladen und führt daher zu dem Fehler "Abhängigkeit kann nicht aufgelöst werden".

Yashas
quelle
1
Dies ist die beste Antwort
Zia Ur Rahman
Wie hat es etwas mit einem lokalen Projekt zu tun, offline zu sein?
m0skit0
Wenn Sie offline sind, können Sie die erforderlichen Abhängigkeiten nicht herunterladen.
Yashas
2

Ich habe die gleichen Probleme getroffen und gelöst.

Aufgrund meiner Situation build.gradleenthält Ihre Datei für das App-Projekt vermutlich folgende Ausschnitte:

android {
    ...
    buildTypes {
        debug {...}
        release {...}
        dexOptions {...}
    }
}

Da dexOptionses sich jedoch nicht um einen Build-Typ handelt, sollten Sie den dexOptionsAbschnitt buildTypeswie folgt verschieben :

android {
    ...
    dexOptions {
        ...
    }

    buildTypes {
        debug {...}
        release {...}
    }
}

Hoffe das kann jemandem helfen.

Zhuang Ma
quelle
2

Das Hinzufügen von productFlavors {} zur App build.gradle hat das Problem für mich gelöst. Siehe unten:

buildTypes {
        release {
             ...
        }
    }
productFlavors {
    }
cbelwal
quelle
2

Dies kann auch passieren, wenn Sie einen Verweis auf das Funktionsmodul hinzufügen, das den falschen Plugin-Typ verwendet. Einfach com.android.applicationzu com.android.featureoder wechselncom.android.library

https://i.stack.imgur.com/NDjnG.png

Igor Wojda
quelle
1

Ich denke, es ist aus der gradle-wrapper.propertiesDatei: Verteilungs-URL distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip erstellen und nicht upgarde zu:distributionUrl=https\://services.gradle.org/distributions/gradle-4 ....

Nawrez
quelle
Ja, was ist Ihr Problem, wenn es nicht so ist?
Nawrez
2
Hat bei mir nicht funktioniert. Diese Lösung gibt mir den Fehler "Fehler: (1, 0) Die minimal unterstützte Gradle-Version ist 4.1. Die aktuelle Version ist 3.3. Bitte korrigieren Sie die Gradle-Einstellungen des Projekts. Korrigieren Sie den Gradle-Wrapper und importieren Sie das Projekt erneut"
Sandeep
3
Ein Nicht-Upgrade ist keine gültige Lösung für dieses Problem.
Mark
1

Es scheint ein Fehler bei Gradle zu sein. Dies löst das Problem für mich, ist aber keine Lösung. Wir müssen auf eine neue Version warten, um diese Probleme zu beheben.

Setzen Sie auf build.gradle im Projekt den Klassenpfad 'com.android.tools.build:gradle:2.3.3' anstelle des Klassenpfads 'com.android.tools.build:gradle:3.0.0'. .

Stellen Sie auf gradle-wrapper.properties https://services.gradle.org/distributions/gradle-3.3-all.zip statt https://services.gradle.org/distributions/gradle-4.1.2-all.zip ein

Ramin
quelle
Also tritt der Fehler immer noch in Gradle 5.1.1 auf?
m0skit0
1

In meinem Fall war das Problem auf eine Abhängigkeit zurückzuführen, die ich importieren wollte (BottomNavigationViewEx).

Diese Abhängigkeit muss von jitpack.io und maven.google.com heruntergeladen werden, und ich habe diese Konfiguration in den Buildscript-Abschnitt eingefügt:

buildscript {
    repositories {
        google()
        jcenter()
        maven { url "https://jitpack.io" } // this is incorrect
        maven { url "https://maven.google.com" } // this is incorrect
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
    } 
}

was falsch war, muss ich diese beiden Maven-Linien entfernen und sie in den rechten Abschnitt 'allprojects' aufnehmen:

allprojects {
    repositories {
        google()
        jcenter()
        maven { url "https://jitpack.io" }
        maven { url "https://maven.google.com" }
    }
}

Hoffe es hilft jemandem genauso für mich.

Neonigma
quelle
Wie wirkt sich Maven auf ein lokales Projekt aus?
m0skit0
1

Ich habe alle oben genannten Lösungen ausprobiert und keine davon hat für mich funktioniert. Ich habe sichergestellt, dass mein Bibliotheks- und App-Modul genaue Build-Typen und Produktvarianten enthält.

Jerry Okafor
quelle
1

Dieser Thread scheint sich ein wenig gefragt zu haben, aber im Zusammenhang mit der ursprünglichen Frage müssen Sie nicht nur Ihre buildTypes in beiden build.gradle-Dateien haben, sondern auch Ihre productFlavors (wenn Sie sie natürlich verwenden) in beiden build.gradle-Dateien ebenfalls.

user330844
quelle
0

Ich habe versucht, Android Studio 3.0.1 mit Internetverbindung auszuführen. Android Studio hat automatisch etwas von einem Link heruntergeladen, der in der Gradle-Build-Benachrichtigung angezeigt wurde. Ich kann nicht sagen, dass dies eine sichere Antwort ist, aber probieren Sie es aus. Vielleicht können Sie Ihr Problem lösen.

Ankit Jha
quelle
Es gibt andere Antworten, die die Frage des OP stellen, und sie wurden vor einiger Zeit veröffentlicht. Wenn Sie eine Antwort veröffentlichen, lesen Sie: Wie schreibe ich eine gute Antwort? Bitte stellen Sie sicher, dass Sie entweder eine neue Lösung oder eine wesentlich bessere Erklärung hinzufügen, insbesondere wenn Sie ältere Fragen beantworten.
help-info.de
0

Wenn Sie Android Studio unter Linux verwenden:

Gehen Sie zu: Home/Android Studio Projects folder/App name folder Terminal auf dieser Seite öffnen und geben Sie Folgendes ein:

./gradlew -Dhttp.proxyHost

Überprüfen Sie, ob JAVA_HOMEein gültiges Verzeichnis festgelegt ist. Wenn kein gültiger Speicherort festgelegt ist, erstellen Sie Ihr Projekt endgültig neu.

HINWEIS: Wenn dies nicht funktioniert, entfernen Sie den Gradle-Cache-Ordner oder den gesamten Ordner und laden Sie ihn erneut mit Android Studio herunter.

Fazel
quelle
0

Ich habe den gleichen Fehler festgestellt, als ich versucht habe, ein Projekt mit Gradle niedrigerer Version zu importieren und versehentlich die Gradle-Installation zu stoppen. Ich behebe dieses Problem, indem ich den Offline-Modus deaktiviere und die Installation der niedrigeren Gradle-Version beende

Yo Ich
quelle
0

Fügen Sie die Bibliothek über Datei-> Rechtsklick-> Neu-> Modul-> Eclipse ADT-Projekt importieren-> Browser durchsuchen-> Fertig stellen hinzu. Fügen Sie nun in der App-Gradle-Einstellung folgenden Code hinzu:

implementation project(':library')

Fügen Sie abschließend im Einstellungsgrad folgenden Code hinzu:

include ':app', ':library'
Soumen Das
quelle
0

Nach dem Update von Android Studio auf 3.3. Ich hatte dieses Problem, als ich versuchte, Firebase JobDispatcher zu laden. Das Hinzufügen dieses Links auf gradle.properties hat mein Problem gelöst

distributionUrl=https://services.gradle.org/distributions/gradle-4.1-all.zip
Shaon
quelle
0

Ich weiß, dass keine der oben genannten Lösungen funktionieren wird, da ich lange Zeit in dieser Art von Problem stecken geblieben bin und dieses Problem schließlich gelöst habe, nachdem ich das Problem sehr genau beobachtet habe, was darauf hinweist

Abhängigkeit für ': app @ dexOptions / compileClasspath' konnte nicht aufgelöst werden: Projekt: library_Name konnte nicht aufgelöst werden.

Sie müssen sicherstellen, dass die Klasse dort wohnt. Diese eine Sache wird sich für viele als sehr hilfreich erweisen, da ich mich der Lösung viel näher an die Lösung gebracht habe. Wenn in diesem Ordnerpfad nichts vorhanden ist, müssen Sie das gesamte Material wie den Ordner "src folder build" usw. abrufen, kopieren und dort einfügen. Synchronisieren / Wiederherstellen des Projekts. Versuchen Sie bei Bedarf, Android Studio ungültig zu machen und neu zu starten. Ich hoffe, dies wird Sie aus Schwierigkeiten herausholen, wie es in meinem Fall passiert ist.

Vielen Dank

Ali Nawaz
quelle
0

wechseln implementation 'com.android.support:appcompat-v7:27+'zuimplementation 'com.android.support:appcompat-v7:+' arbeitete für mich

Ich verwende Intellij 2019 CE mit Kotlin

tausif
quelle