it-swarm.com.de

Android Studio-Build schlägt fehl, wenn "Task" im Stammprojekt "MyProject" nicht gefunden wurde.

Ich erhalte diese Fehlermeldung, wenn ich versuche, mein Projekt zu erstellen, nachdem ich einen Laptop gewechselt und auf Android Studio Version 0.8.2 aktualisiert habe.

FEHLER: Die Erstellung ist mit einer Ausnahme fehlgeschlagen.

  • Was schief gelaufen ist: Task '' im Stammprojekt 'MyProject' nicht gefunden.

  • Versuchen: Führen Sie Sammelaufgaben aus, um eine Liste der verfügbaren Aufgaben zu erhalten. Führen Sie die Option --stacktrace aus, um die Stack-Ablaufverfolgung abzurufen. Führen Sie die Option --info oder --debug aus, um weitere Protokollausgaben zu erhalten.

BUILD FAILED

Hier sind meine Gradle-Dateien:

Einstellungen auf oberster Ebene

include ':MyProject'

build.gradle in MyProject:

apply plugin: 'com.Android.application'

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "com.Android.tools.build:gradle:0.12.+"
    }
}
repositories {
    mavenCentral()
}

Android {
    compileSdkVersion 20
    buildToolsVersion "20"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 20
    }
}

dependencies {
    compile 'de.timroes.Android:EnhancedListView:[email protected]'
    compile 'com.nineoldandroids:library:2.4.0'
}

Build.gradle auf oberster Ebene ist leer

81
TomRichardson

Dies ist eine schwierige Frage für Google (die einfachen Anführungszeichen), auch wenn die Beantwortung verspätet erfolgt. Es ist nicht klar, was passiert. Ich habe noch nicht den Ruf, einen Kommentar abzugeben oder nach dem Umfang zu fragen (oder 3 Links zu posten), daher kann diese Antwort etwas langweilig sein.

Um schnell zu antworten, sind möglicherweise mehrere Gradle-Plug-ins in Ihrem Projekt enthalten.

Synchronisieren Sie Gradle Wrapper und Plugins

Mein Problem schien mit einer beschädigten IML-Datei zu beginnen. Android Studio (zwischen dem Schließen und dem erneuten Öffnen eines Projekts) beschwerte sich, dass ein IML nicht mehr vorhanden war (was nicht der Fall war) und ein Modul gelöscht werden sollte, was ich ablehnte. Es blieb bestehen, ich habe ein Upgrade auf AS 0.8.7 (Canary Channel) durchgeführt und bin beim OP-Problem hängen geblieben (Task '' nicht im Root-Projekt gefunden). Dies wurde komplett blockiert, so dass ich mich in Gradle einarbeiten musste.

Meine Reparaturschritte unter OSX (bitte für Windows anpassen):

  1. Aktualisieren Sie Android Studio auf 0.8.7
    • Einstellungen | Aktualisierungen | Schalten Sie "Beta Channel" auf "Canary Channel" und führen Sie dann eine Überprüfung durch.
    • Möglicherweise können Sie dies überspringen.
  2. Überprüfte den Gradle-Wrapper (derzeit 1.12.2; versuche nicht, 2.0 zu diesem Zeitpunkt zu verwenden).

    • Angenommen, Sie benötigen keine bestimmte Version, verwenden Sie die neueste unterstützte Distribution

      $ vi ~/project/gradle-wrapper.properties ... distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.Zip

    • Dies kann in Android Studio unter Einstellungen | eingestellt werden Gradle (aber 0.8.7 hat mir Fehler wegen ungültiger Position gemeldet).

    • Der 'Wrapper' ist nur eine Kopie von Gradle für jedes Android Studio-Projekt. Sie können Gradle 2 in Ihrem Betriebssystem und verschiedene Versionen in Ihren Projekten verwenden. In den Entwicklerdokumenten zu Android wird erklärt, dass hier .
    • Passen Sie dann Ihre build.gradle-Dateien für das Plugin an . Die Gradle-Plugin-Version muss für das gesamte Projekt mit der Distributions-/Wrapper-Version kompatibel sein. Da die Tools-Dokumentation (tools.Android.com/tech-docs/new-build-system/user-guide#TOC-Requirements) etwas veraltet ist, können Sie die Plugin-Version auf einen zu niedrigen Stand einstellen (z. B. 0.8.0) und Android Studio gibt einen Fehler mit dem für den Wrapper akzeptablen Bereich aus.

In build.gradle haben Sie beispielsweise folgendes Plugin:

dependencies {
    classpath "com.Android.tools.build:gradle:0.12.+"
}

Sie können versuchen, es auf die genaue Version umzustellen:

dependencies {
    classpath "com.Android.tools.build:gradle:0.12.2"
}

und (nachdem Sie aufgezeichnet haben, von welcher Version Sie jeweils wechseln), um sicherzustellen, dass jede build.gradle-Datei in Ihrem Projekt dieselbe Plug-in-Version verwendet. Das "+" sollte funktionieren (für 0.12.0, 0.12.1, 0.12.2 usw.), aber mein Build war erfolgreich, als ich Googles Volley-Bibliothek (ursprünglich gradle: 0.8. +) Und mein Hauptprojekt (ursprünglich 0.12) aktualisierte. +) zur festen Version: gradle: 0.12.2.

Andere Schecks

  1. Stellen Sie sicher, dass sich nicht zwei Android Anwendungsmodule im selben Projekt befinden

    • Dies kann mit der endgültigen Lösung (verschiedene Versionen von Gradle, siehe oben) und der Ursache zusammenhängen

      UNEXPECTED TOP-LEVEL EXCEPTION: com.Android.dex.DexException: Multiple dex files define (various classes)

    • Zum Überprüfen Build | Make Project sollte kein Fenster öffnen, in dem Sie gefragt werden, welche Anwendung Sie erstellen möchten.

  2. Ungültige deine Caches
    • Datei | Caches ungültig machen/neu starten (stackoverflow.com/a/19223269/513413)
  3. Wenn Schritt 2 nicht funktioniert, löschen Sie ~/.gradle/(www.wuttech.com/index.php/tag/groovy-lang-closure/)
    • Beenden Sie Android Studio
    • $ rm -rf ~/.gradle /
    • Starten Sie Android Studio und synchronisieren Sie dann:
      • Werkzeuge | Android | Synchronisieren Sie das Projekt mit Gradle-Dateien
    • Wiederholen Sie diese gesamte Sequenz (beenden ... synchronisieren) einige Male, bevor Sie aufgeben.
  4. Bereinigen Sie das Projekt
    • Build | Projekt bereinigen

Wenn Sie dies sehen ...

In meinen letzten Builds sah ich immer wieder schreckliche Fehler (Seiten mit Ausnahmen), aber innerhalb von Sekunden wurden die Nachrichten gelöscht, der Build war erfolgreich und die App wurde bereitgestellt. Da ich es nie erklären konnte und die App funktionierte, habe ich nie bemerkt, dass ich zwei Gradle-Plugins in meinem Projekt hatte. Ich glaube, die Gradle-Plugins haben sich bekämpft. einer stürzte ab, der andere verlor seinen Zustand und meldete den Fehler.

Wenn du Zeit hast, hat mir das einstündige Video "Eine sanfte Einführung in Gradle" (www.youtube.com/watch?v=OFUEb7pLLXw) wirklich geholfen, mich den Gradle-Build-Dateien, -Tasks, -Build-Entscheidungen usw. anzunähern.

Haftungsausschluss

Ich lerne diesen ganzen Stapel auf einem fremden Betriebssystem, nachdem ich eine andere Karriere hinter mir habe ... alles zur gleichen Zeit und unter Druck. In den letzten Monaten habe ich jede Wand getroffen, von der ich denke, dass sie Android hat; Ich war schon oft hier und dies ist mein erster Beitrag. Ich dachte, dies sei eine schwierige Lösung, und entschuldige mich aufrichtig, wenn die Qualität meiner Antwort die Schwierigkeit widerspiegelt, die ich hatte, sie zu finden.

60
ǝɲǝɲbρɯͽ

Laden Sie das System-Image (des angestrebten Android-Levels Ihres Projekts) vom SDK-Manager für das importierte Projekt herunter.

Dieser Fehler tritt auf, wenn Sie im SDK-Ordner kein Ziel-SDK Ihres Android-Projekts installiert haben

zum Beispiel Die Ziel-SDK-Stufe Ihres importierten Projekts kann Android-19 sein, und auf dem SDK-Ordner-> System-Images ist möglicherweise Android-21 installiert. Sie müssen also ein Android-19-Systemabbild und andere Dateien vom SDK-Manager herunterladen, oder Sie können es kopieren, wenn Sie das Systemabbild verwenden. 

24
Ankit Bansal

Löschen:

<facet type="Android" name="Android">
    <configuration />
</facet>

in deiner iml-datei. Das ist für mich in Ordnung.

https://plus.google.com/+AlexRuiz/posts/49hP3V9GSGe

13
toni

Dies ist mir kürzlich passiert, als ich ein Android Studio-Projekt schließe und ein anderes Eclipse-Projekt importierte. Es schien ein Fehler in Android Studio zu sein, bei dem einige Einstellungen des zuvor geöffneten Projekts erhalten bleiben und das neue Projekt verwirrt wird.

Die Lösung war extrem einfach: Schließen Sie das Projekt und schließen Sie Android Studio vollständig, bevor Sie es erneut öffnen, und importieren Sie das neue Projekt. Ab dann läuft alles reibungslos.

9
rehan

Einfache Lösung für mich war 

  1. Build> Projekt bereinigen
  2. Starten Sie Android Studio neu
4
holangun

Anscheinend hat dieser Fehler mehrere Ursachen. Hier ist was für mich behoben.

Ich habe den Build-Befehl so ausgeführt:

./gradlew :testapp: build

Wenn Sie es ohne Speicherplatz ausführen, wurde das Problem behoben:

./gradlew :testapp:build
3
David

Wenn Sie zwei Fenster von Android Studio geöffnet haben und beim Kompilieren versuchen, tritt dieses Problem möglicherweise auf. Wenn ich ein unterstütztes Google Cloud Endpoint-Modul kompilierte, das nicht in ein Projekt eingebettet war, sondern in verschiedenen Android Studio-Projekten verwendet wurde, und wenn mehr als eine Instanz geöffnet ist, wird dieser Fehler für mich zum Vorschein kommen. Sobald Sie jedoch andere Fenster schließen, wird alles in Ordnung sein. Manchmal müssen Sie Android Studio möglicherweise vollständig neu starten.

2

Ich habe diesen Fehler erhalten, als ich von einem Git-Zweig zu einem anderen gewechselt bin und dann versucht habe, "Clean Project" auszuführen. Ich habe mit ack nach dem Tasknamen gesucht und in einer .iml-Datei gefunden.

Meine Lösung bestand darin, die .iml-Datei des Projekts neu zu generieren, indem Sie im Hauptmenü auf Tools> Android> Sync Project with Gradle Files klicken. ( Dank dieser Antwort .)

2
Josh

In meinem Fall wurde das Problem bei der Einstellung der 'Gradle-Version' wie bei der 'Android Plugin-Version' unter Datei-> Projektstruktur-> Projekt behoben.

2
somesh

Noch eine Lösung für das gleiche Problem:

Dies passierte mir jedes Mal, wenn ich ein Eclipse-Projekt mithilfe des Assistenten (Studio-Version 1.3.2) in Studio importierte.

Was ich zufällig herausfand, war, dass das Beenden des Android-Studios und der Neustart des Studios das Problem gelöst haben.

Frustrierend, aber hoffe das hilft jemandem ...

1
Mick

Stellen Sie sicher, dass Sie die neuesten Werte in Ihren Gradle-Dateien haben. Ab diesem Schreiben:

  • buildToolsVersion "21.1.2"

  • abhängigkeiten { Klassenpfad 'com.Android.tools.build:gradle: 1.1.0'}

1
IgorGanapolsky

Problem

Ich habe speziell die "[module_name]:prepareDebugUnitTestDependencies" task not found-Fehlermeldung erhalten, jedes Mal wenn ich gradle build lief. Dies ist mir passiert, nachdem ich mein Android Studio auf 3.0.0 aktualisiert habe.

Ermittlung

Ich hatte dem gradle-basierten Compiler zuvor Befehlszeilenoptionen hinzugefügt. Sie finden diese unter: Datei -> Einstellungen -> Erstellen, Ausführen, Bereitstellen -> Compiler -> Befehlszeilenoptionen . Im Einzelnen hatte ich eine Reihe von Aufgaben ausgeschlossen, einschließlich der zuvor genannten Aufgabe. Während dies bei der vorherigen stabilen Version (damals 2.3) gut funktionierte, scheint dies der Grund für den Build-Fehler zu sein.

Lösung

Dies ist eine von vielen möglichen Lösungen. Stellen Sie sicher, dass Sie die richtigen Befehlszeilenoptionen festgelegt haben, und zwar in den Einstellungen unter: Datei -> Einstellungen -> Erstellen, Ausführen, Bereitstellen -> Compiler -> Befehlszeilenoptionen , und dass keiner von ihnen dieses Problem verursacht.

In meinem Fall entfernte ich den Ausschluss dieser Aufgabe (und anderer Aufgaben, die in Verbindung zu stehen schienen), ließ die nicht zusammenhängenden Aufgaben ausgeschlossen und es funktionierte!

1
Ace

Ich entferne/ändere den .gradle-Ordner in c:\users\Myuser\.gradle und starte Android Studio neu

0
ashkufaraz

Ich habe dieses Problem erhalten, weil der SDK-Pfad Android nicht gefunden wurde. Es fehlte eine local.properties -Datei oder eine Android_HOME -Umgebungsvariable.

0
  1. Eingabeaufforderung öffnen
  2. dann gehen Sie durch die Eingabeaufforderung Ihres Projektordners
  3. Geben Sie gradlew build und run ein
0
Krishan

Anscheinend ist dieses Problem durch Android Studio auf die verschiedenen Situationen zurückzuführen, aber der Grund ist ein Build-Fehler beim Import eines vorhandenen Projekts in Android Studio. 

In meinem Fall habe ich mein existierendes Projekt importiert, bei dem ich wenige Build-Tools installieren sollte. Anschließend wurde die Build-Konfiguration mit einem Fehler abgeschlossen. In diesem Fall machen Sie einfach die folgenden Dinge

  1. Schließen Sie das aktuelle Projekt
  2. Datei> Neu> Projekt importieren (Das zuletzt geöffnete Projekt nicht verwenden)

    Hinweis: Ich bin sicher, dass diese Art von Fehler nicht im Quellcode enthalten ist, wenn dies auf Projekt importieren geschieht.
0
Deva

Legen Sie den Pfad des Stammordners fest und führen Sie anschließend den folgenden Befehl aus

ex : cd C:\Users\maha\Documents\gradle\gs-gradle-master\initial
0
Maha

Das habe ich getan

  1. Entfernen Sie den .idea-Ordner

    $ mv .idea .idea.bak

  2. Importieren Sie das Projekt erneut

0