Dies ist die Ausgabe meiner Gradle-Konsole. Ich kann mein Projekt nicht erstellen
D:\Android Projects\....\app\src\main\res\layout\topic_view_header.xml
Error:error: resource attr/?? (aka -packagename- :attr/??) not found.
Error:error: resource attr/?? (aka -packagename-:attr/??) not found.
Error:error: resource attr/?? (aka -packagename-:attr/??) not found.
Error:resource attr/?? (aka -packagename-:attr/??) not found.
Error:resource attr/?? (aka -packagename-:attr/??) not found.
Error:resource attr/?? (aka -packagename-:attr/??) not found.
Error:failed linking file resources.
Error:Java.util.concurrent.ExecutionException:
Java.util.concurrent.ExecutionException:
com.Android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:Java.util.concurrent.ExecutionException:
com.Android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:com.Android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for
details
Error:Execution failed for task ':app:processDebugResources'.
> Failed to execute aapt
Information:BUILD FAILED in 27s
Information:11 errors
Information:0 warnings
Android Studio 3.0 RC 2
Update 2 (Folge diesem Ansatz)
Sie sollten das jetzt nicht tun. Beheben Sie stattdessen alle Fehler. Dies ist nur eine Problemumgehung, bis es entfernt wird. Danach müssen Sie die Fehler trotzdem manuell beheben.
Versuchen Sie, Ihr Gradle-Plugin auf 3.3.0-alpha06
zu aktualisieren, um zu überprüfen, ob das Problem dadurch behoben wird.
Update 1:
Probleme mit Nicht-ASCII-Zeichen wurden in AAPT2 und Android Gradle Plugin behoben (yay!). Anstatt AAPT2 jetzt zu deaktivieren, können Sie einfach Android Gradle Plugin Version 3.2.0-alpha11 oder neuer verwenden. Dieser Fehler sollte nicht mehr auftreten.
Originalantwort
Aapt2 ist standardmäßig aktiviert, wenn Sie das Android-Plugin für Gradle 3.0 verwenden.
Dies ist zum
verbesserung der inkrementellen Ressourcenverarbeitung
wie gesagt hier .
Wenn Sie jedoch Probleme damit haben, können Sie zur vorherigen Version zurückkehren, indem Sie diese in gradle.properties
hinzufügen.
Android.enableAapt2=false
UPDATE
Es gibt eine neue Version von Gradle und Android-Gradle-Plugin, die diese Probleme behebt.
build.gradle (oberste Ebene)
buildscript {
dependencies {
classpath 'com.Android.tools.build:gradle:3.2.1'
}
}
gradle-wrapper.properties
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8-all.Zip
VORHERIGE ANTWORT
Wenn Sie AAPT2 deaktivieren, verbergen Sie nur das eigentliche Problem.
Bitte beachten Sie, dass AAPT1
in Zukunft entfernt werden kann. Daher müssen Sie AAPT2
verwenden. Eigentlich ist der Migrationsleitfaden nicht schwer zu befolgen, da Sie nicht so viele Änderungen gleichzeitig sehen. Dieser Weg ist zukunftssicher.
Elementhierarchien im Android-Manifest
In früheren AAPT-Versionen waren Elemente in falschen Knoten in .__ geschachtelt. Das Android-Manifest wird entweder ignoriert oder führt zu einer Warnung. Zum Betrachten Sie beispielsweise das folgende Beispiel:
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android" package="com.example.myname.myapplication"> <application ... <activity Android:name=".MainActivity"> <intent-filter> <action Android:name="Android.intent.action.MAIN" /> <category Android:name="Android.intent.category.LAUNCHER" /> </intent-filter> <action Android:name="Android.intent.action.CUSTOM" /> </activity> </application> </manifest>
Daher müssen Sie zuerst prüfen, ob Sie wirklich die richtige Manifest-Struktur wie unten gezeigt befolgen.
Manifest-Dateistruktur
Das folgende Codefragment zeigt die allgemeine Struktur des Manifests Datei und jedes Element, das es enthalten kann. Jedes Element zusammen mit Alle seine Attribute sind vollständig in einer separaten Datei dokumentiert.
<manifest> <uses-permission /> <permission /> <permission-tree /> <permission-group /> <instrumentation /> <uses-sdk /> <uses-configuration /> <uses-feature /> <supports-screens /> <compatible-screens /> <supports-gl-texture /> <application> <activity> <intent-filter> <action /> <category /> <data /> </intent-filter> <meta-data /> </activity> <activity-alias> <intent-filter> . . . </intent-filter> <meta-data /> </activity-alias> <service> <intent-filter> . . . </intent-filter> <meta-data/> </service> <receiver> <intent-filter> . . . </intent-filter> <meta-data /> </receiver> <provider> <grant-uri-permission /> <meta-data /> <path-permission /> </provider> <uses-library /> </application> </manifest>
Ich hatte einen Fehler in meinem XML-Layout. Überprüfen Sie daher Ihr XML-Layout auf Fehler.
Überprüfen Sie die Registerkarte der Gradle-Konsole in Android Studio (standardmäßig in der rechten unteren Ecke). In meinem Fall gab es Fehler wie diese:
C:\Users\Jozef Bar??k\.gradle\caches\transforms-1\files-1.1\appcompat-v7-25.4.0.aar\d68bb9d2059935a7891196f4dfb81686\res\drawable-hdpi-v4\abc_ic_menu_share_mtrl_alpha.png: error: file not found.
Error: Java.util.concurrent.ExecutionException: com.Android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
:app:mergeDebugResources FAILED
Ich habe das Problem gelöst, in dem der Benutzer von Gradle an einen anderen Ort ohne weiße oder Sonderzeichen gesetzt wurde:
C:\Android\.gradle
Sie können die Einstellung " Pfad zum Dienstverzeichnis " im Dialogfeld "Einstellungen" konfigurieren. In meinem Fall musste das alte .gradle-Verzeichnis am vorherigen Speicherort gelöscht und das Android Studio neu gestartet werden.
Mein Problem war auf einen Dateinamen mit der Endung .9.png zurückzuführen. Ich änderte die Endung in .png und das Problem verschwand. Ich habe den Hinweis von der Stack-Ablaufverfolgung in Gradle Console erhalten: Die oberste Nachricht lautete "Ausführung fehlgeschlagen für Task: app: mergeDebugResources " und die unterste Nachricht war "com.Android.builder.png NotifierProcessOutput.out "
Ich freue mich auf den Tag, an dem Gradle hilfreiche Fehlermeldungen ausgibt ...
Das gleiche Problem hier haben. @Izabela Orlowska weist darauf hin, dass dieses Problem höchstwahrscheinlich von Sonderzeichen im Pfad (Android-Dateien, Ressourcen usw.) verursacht wird.
Für mich: ří
im Ordnernamen verursachte alle Probleme. Stellen Sie sicher, dass Sie keine Sonderzeichen in Pfaden haben. Das Deaktivieren von AAPT2 ist nur eine temporäre "Lösung". Ihr Projektpfad enthält Nicht-ASCII-Zeichen Android Studio
Ich hatte gerade dieses Problem, als ich versuchte, Datenbindung zu verwenden und das Layout-Tag zu deklarieren. Ich weiß, es ist ein bisschen spät, aber für alle, die dieses Problem haben, Was ich getan habe, um das Problem nach so vielen Versuchen zu lösen, war, dass auf Ihrem Stammlayout, wenn Sie keine Datenbindung verwenden, beispielsweise Folgendes gesagt wird
<Android.support.constraint.ConstraintLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
tools:context=".MainActivity"> </Android.support.constraint.ConstraintLayout>
entferne das
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
xmlns:tools="http://schemas.Android.com/tools"
und fügen Sie es einfach in Ihr Layout-Tag ein ( wenn Sie Datenbindung verwenden )
<layout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
xmlns:tools="http://schemas.Android.com/tools">
</layout>
und hoffentlich wird es funktionieren. Der Android.enableAapt2=false
hat für mich nicht funktioniert, also muss ich alles entfernen und versuchen herauszufinden, warum ich den Fehler bekomme, wenn ich das Layout-Tag stelle und die Datenbindung verwende. Daher kam ich zu der Lösung. Ich hoffe es hilft
Da irgendwann in der Zukunft die Unterstützung für AAPT (1) veraltet sein wird, wäre es gut, die Ursache für den von Ihnen gemeldeten Fehler zu ermitteln.
Könnten Sie den Inhalt der Datei\app\src\main\res\layout\topic_view_header.xml angeben? Anhand der Fragezeichen können Sie Nicht-ASCII-Zeichen verwenden, mit denen AAPT2 immer noch Probleme hat. Wenn es sich tatsächlich um Nicht-ASCII-Zeichen handelt, folgen Sie bitte dem Fehler unter https://issuetracker.google.com/68262818 .
Aktualisieren: Das Problem wurde in Android Gradle Plugin Version 3.2.0-alpha11 oder neuer behoben.
Fügen Sie diese Zeile nicht als andere Antworten zu Ihrem Projekt hinzu. Denn es ist bereits aufgelöst in neueren Versionen von Gradle.
Sie können Ihre Build-Gradle-Version in Projektebene build.gradle
auf den neuesten Stand bringen.
buildscript {
dependencies {
// choose latest if available
classpath 'com.Android.tools.build:gradle:3.3.0-alpha06'
}
}
und gradle-wrapper.properties
// choose latest if available
distributionUrl=https\://services.gradle.org/distributions/gradle-4.9-all.Zip
Weitere Informationen Android-Dokumentation
Wenn Sie hinzufügen, erhalten Sie eine Warnung Android.enableAapt2=false
WARNUNG: Die Option 'Android.enableAapt2' ist veraltet und sollte nicht .__ sein. mehr verwendet werden. Verwenden Sie "Android.enableAapt2 = true", um diese Datei zu entfernen Warnung. Es wird Ende 2018 entfernt.
Ich bin auch auf diesen Fehler gestoßen. Für mich war es, als ich das Ziel-SDK von 26 auf 25 reduzierte. Ich konnte das Problem durch Ändern der Appcompat-Abhängigkeitsversion von beheben
implementation 'com.Android.support:appcompat-v7:26.1.0'
zu
implementation 'com.Android.support:appcompat-v7:25.4.0'
Dadurch kann der Compiler auf die Stilattribute zugreifen, die er derzeit nicht finden kann. Dadurch wird das Problem behoben, anstatt das eigentliche Problem zu maskieren, wie Enzokie vorschlug.
Ich habe den gleichen Fehler AAPT2-Fehler erhalten: Überprüfen Sie die Protokolle auf Details, und ich habe die oben genannten Lösungen angewendet. Wie in der gängigsten Lösung, wurde gradle.properties geöffnet und die Zeile hinzugefügt
Android.enableAapt2 = false
für die Lösung, aber ich habe eine Fehlermeldung Prozess 'Befehl' D:\Android\sdk\Sdk\build-tools\27.0.3\aapt.exe '' beendet mit Nicht-Null-Exit-Wert 1
Nach vielen Suchen fand ich jedoch ein Problem in der XML-Datei des Layouts, bei dem ich Zeilen in der XML-Datei des Layouts wiederhole, die wie folgt aussieht:
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
Entfernen Sie Zeilen aus der XML-Datei wiederholen und erstellen Sie das Projekt und Fertig.
Ich hatte genau das gleiche Problem: Nach dem Update auf Android Studio 3.1.2 konnte mein Projekt nicht mit einem AAPT2-Fehler kompiliert werden, der darauf hinweist, dass einige meiner Drawables, auf die styles.xml
verweist, nicht gefunden wurden. Das Deaktivieren von AAPT2 ist keine Lösung mehr, da die Einstellung veraltet ist und Ende 2018 entfernt wird.
Culprit war eine leere Zeile kurz vor der XML-Deklaration in einer völlig layout.xml
-Datei ... Damit begann die layout.xml
-Datei folgendermaßen:
//empty line//
<?xml version="1.0" encoding="utf-8"?>
Die leere Zeile wurde entfernt und alles funktionierte wieder wie ein Zauber. Unglaublich und unwahrscheinlich, aber wahr.
Android Studio hat tatsächlich eine Warnung ausgegeben, da die Datei nicht mit der XML-Deklaration begann (wegen der leeren Zeile). Die Warnung ist jedoch nur sichtbar, wenn die Datei im Editor geöffnet ist.
Löschen Sie den Ordner .idea
und versuchen Sie es erneut. Stellen Sie sicher, dass Sie ein offenes Netzwerk verwenden.
In meinem Fall habe ich den falschen Farbcode #CC00000
verwendet, der ungültig ist, weil er 7-stellig ist, der Farbcode sollte jedoch 3 oder 6 oder 8 Ziffern plus # enthalten
Ich bin nicht sicher, ob dies für Sie bereits beantwortet wurde, aber erlauben Sie mir, mich abzuwägen. In letzter Zeit bin ich mit einem ähnlichen Problem konfrontiert worden, und ich konnte das genaue Problem auf der Build-Registerkarte neben dem Logcat ermitteln. Mein Problem wurde durch einen Fontfamily-Fehler in XML verursacht.__ Ich verwende die neueste Version von Android Studio mit dem Update vom März 2018.
In meinem Fall bestand das eigentliche Problem darin, dass die generierte Dateiic_launcher_foreground.xmlnach dem Generieren von Image Asset zum Generieren des Mipmap-Symbols für das Startprogramm für mein Projekt einen Fehler (falsch generiert) aufwies. Am Ende der Datei fehlte das schließende xml-Tag. </ vector> fehlte.
@Izabela Orlowska wies darauf hin: In meinem Fall ist das Problem auf einige Dateien zurückzuführen, die nicht im Gradle Cache-Ordner gefunden wurden. (Windows-Betriebssystem)
Der Standardpfad war in meinem Benutzerordner. Der Pfad enthielt Umlaute und ein Leerzeichen. Ich habe den Ordner gradle verschoben, indem ich die Umgebungsvariable GRADLE_HOME
und GRADLE_USER_HOME
in einen neu erstellten Ordner ohne Umlaute oder Leerzeichen im Pfad gesetzt habe. Das hat das Problem für mich behoben.
Wie von anderen vorgeschlagen,
Android.enableAapt2=false
ist die häufigste Lösung.
In meinem Fall war der Fehler jedoch auf unterschiedliche Versionen in compileSdkVersion und buildToolsVersion zurückzuführen.
Stellen Sie sicher, dass die Hauptversion gleich bleibt.
Ich habe auf falsche Weise ein Koordinator-Layout-Attribut verwendet, das habe ich entfernt und es funktioniert. Überprüfen Sie Ihr Layout
app:layout_constraintVertical_bias="parent"
Das sollte ein numerischer Wert sein, nicht wörtlich:/winziger Fehler
Klicken Sie auf die Registerkarte Gradle auf der rechten Seite von Android Studio -> Öffnen Sie das Projekterstellungsverzeichnis wie in der folgenden Abbildung gezeigt -> Führen Sie assembleDebug aus
- Der Fehler wird wie im folgenden Bild angezeigt
Die Ressourcenausnahme bedeutet, dass bei Ihren Ressourcen ein Fehler aufgetreten ist. Alle Ressourcenordnerdateien sind beschädigt. Versuchen Sie, alle Bilder in einem Zeichnungsordner zu öffnen, um zu sehen, ob diese ordnungsgemäß geöffnet werden.
Es gibt einen guten Befehl, um nach beschädigten Ressourcen-PNGs zu suchen.
f -name "*.png" | xargs -L 1 -I{} file -I {} | grep -v 'image/png; charset=binary$'
Verwenden Sie nicht diese Android.enableAapt2 = false, Dies ist keine Lösung. Finden Sie den Fehler heraus, der im Feld Ausgabe erstellen genau angezeigt wird. Klicken Sie auf Ansicht umschalten, um die genaue Fehler- oder Ausnahmebedingungen zu ermitteln
compileSdkVersion 28
buildToolsVersion "28.0.3"
verwenden Sie dies auf Gradel-Wrapper:
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.Zip
folgen Sie der Anweisung, um externe Bibliothek oder Abhängigkeiten zu löschen oder zu aktualisieren
Sieht aus wie ein Ressourcenfehler . Ich würde dort anfangen.
Ich habe diese ("Fehler: com.Android.tools.aapt2.Aapt2Exception: AAPT2-Fehler: Überprüfen Sie die Protokolle auf Details") beim ersten Mal bezogen auf Bilder. Größe ändern gelöst Oder ein anderes Mal reparierte gerade die Verbindungen zu den Ressourcen.
Ich hatte ein sehr ähnliches Problem. Es wurde gelöst, indem der Cache von gradle gelöscht wurde (~/.gradle/caches unter Linux), wodurch Android Studio gezwungen war, alles erneut herunterzuladen und zu generieren.
In meinem Fall wurde dies durch Hinzufügen eines Verweises auf das Paket für das Constraint-Layout behoben
implementation 'com.Android.support.constraint:constraint-layout:1.1.0'
Überprüfen Sie, ob bei Ihren neuen XML-Dateien ein Problem aufgetreten ist. Gehen Sie zu Android-Problemen und prüfen Sie, ob dort XML-Dateien vorhanden sind. Der Fehler wird jedoch nicht in der rechten XML-Datei angezeigt, die das Problem aufweist.
In meinem Fall habe ich zwei Header in dieselbe XML-Datei eingefügt.
Sowas in der Art:
Ich stehe auch vor diesem Problem. "AAPT2-Fehler: Überprüfen Sie die Protokolle auf Details" mit Studio Version 3.1.2 beim ersten Erstellen der App.
Ich verwendete 'com.Android.support:appcompat-v7:26.1.0' und einige Stile wurden nicht gefunden, wenn ich die Fehlerprotokolle sehe. Also änderte er es in "com.Android.support:appcompat-v7:25.3.1" aus meinem Arbeitsprojekt und das Problem wurde behoben.
Versuch es.
Wenn Sie immer noch Probleme haben, versuchen Sie es mit v7: 26+ anstelle der genauen Version. Dies wird das Problem definitiv lösen.
Ich hatte auch ein solches Problem, das Original ist das Taskleiste dieses Computers:
C:\Benutzer\'erscheinen Sonderzeichen'\.Android erscheint auf Chinesisch,
und jetzt änderte ich den Pfad zu:
C:\Benutzer\hjc\.Android.
Der Grund ist das Problem der Sonderzeichen. Aus diesem Grund führt dies zu Problemen mit dem appt2Exception-Problem
Durch das Schließen des Projekts und das Neustarten des Android-Studios wurde dieses Problem für mich behoben.
Während des Neustarts meldete Android Studio, dass fehlende SDKs heruntergeladen werden mussten. Sobald dies erledigt war, wurde das Problem behoben.
Ich habe diese Fehlermeldung erhalten, als der Projektname sehr lang war und der Ort, an dem ich das Projekt speicherte, hinzugefügt wurde. Durch das Verschieben des Projekts an einen anderen Speicherort, sodass die Dateinamen das Systemlimit nicht überschreiten, wurde der Fehler für mich behoben.
C:\Users\<UserName>\AndroidStudioProjects\From Github\AdvancedAndroid_Emojify-TLIB.02-Exercise-DetectFaces\AdvancedAndroid_Emojify-TLIB.02-Exercise-DetectFaces\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml Error:error: file not found. Error:Java.util.concurrent.ExecutionException: com.Android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details Error:Execution failed for task ':app:mergeDebugResources'. Error: Java.util.concurrent.ExecutionException: com.Android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Überprüfen Sie folgende Punkte in Ihrem Projekt:
Stellen Sie sicher, dass keine XML-Datei beim Start der Datei ein Leerzeichen enthält.
Vergewissern Sie sich, dass für jede zu zeichnende Datei keine Ausgaben wie Großbuchstaben oder Sonderzeichen im Namen vorhanden sind.
Wenn Ihre aapt2.exe kontinuierlich fehlt, scannen Sie bitte Ihren vollständigen PC. Möglicherweise befindet sich ein Virus, der adb.exp oder aapt2.exe entfernt
Ich hoffe, Sie erhalten eine Lösung.
Ich habe diesen Fehler bekommen
com.Android.tools.aapt2.Aapt2Exception: AAPT2 error
wegen eines falschen Dateinamens eines meiner/drawable-Elemente in der Layer-Liste.
Und ich habe es gelöst, indem ich den Dateinamen in einen korrekten geändert habe.
Ich habe alles probiert, was hier und auf vielen anderen Seiten vorgeschlagen wurde. Irgendwann fand ich heraus, dass das Problem mit Bitdefender Blockierung von aapt war.
Wenn Sie Bitdefender installiert haben, müssen Sie aapt & aapt2 "Application Access" einzeln aktivieren.
Hoffe das ist nützlich.
Deaktivierung des AAPT2-Problemes in der weiteren Entwicklung In meinem Fall wurde der Fehler beim Erstellen des App-Symbols generiert.
<vector xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:width="108dp"
Android:height="108dp"
Android:viewportWidth="Infinity"
Android:viewportHeight="Infinity">
<path Android:fillColor="#26A69A"
Android:pathData="M0,0h108v108h-108z"/>
<path Android:fillColor="#00000000" Android:pathData="M79,19L79,89"
Android:strokeColor="#33FFFFFF" Android:strokeWidth="0.8"/>
Ich löse es, indem ich diese Zeile entferne
Android:viewportWidth="Infinity"
Android:viewportHeight="Infinity"
FürAAPT2-Fehler: Überprüfen Sie die Protokolle auf Detailsodererror: Fehler beim Verknüpfen von Dateiressourcen.fehler:
Überprüfen Sie Ihre.xml-Dateien, die Android enthalten: background = "" und entfernen Sie dieses leere Attribut kann Ihr Problem lösen.
Wenn Sie diesen Fehler nach dem Ausführen einzelner Android-Implementierungstests oder Testklassen (durch Klicken auf das Ausführungssymbol in der Gutter) in einem Kotlin-Projekt in Android Studio 3.0.1 gesehen haben, können Sie den Fehler umgehen, indem Sie stattdessen die Volles Testpaket (durch Klicken mit der rechten Maustaste auf das Testpaket und Auswählen von "Tests ausführen in ...").
In Android Studio 3.0.1 ist ein bekannter Fehler bekannt, der dazu führt, dass IDE Kotlin-Implementierungstests als reguläre JUnit-Tests ausführt, wodurch die Fehlermeldung des OP auf meinem Computer angezeigt wurde. Der Fehler wird unter https://issuetracker.google.com/issues/71056937 nachverfolgt. Es scheint in Android Studio 3.1 Canary 7 behoben worden zu sein.
Wenn Sie Kotlin verwenden, wird ein Fehler aufgrund von Fehlern in XML-Dateien angezeigt. In kotlin ist es sehr schwer, XML-Fehler zu finden. Um das genaue Fehlerprotokoll zu kennen, führen Sie den folgenden Befehl in Android Studio Terminal aus und können die Fehler leicht beheben.
./gradlew clean
./gradlew assemble
Stellen Sie sicher, dass Sie gültige Dateitypen in Ihrem src/main/res/raw
-Verzeichnis verwenden. In meinem Fall hatte ich eine MOV-Datei zusammen mit einigen anderen Dateien in mein Verzeichnis res/raw kopiert. Ich vermute, das Problem war, dass aapt versucht hat, die .mov-Datei zu verarbeiten, und wusste nicht, was damit zu tun ist.
Überprüfen Sie und versuchen Sie es unten. Problem sollte gelöst werden.
Überprüfen Sie Ihr Protokoll zunächst im unteren Bereich des Erstellungsfensters, ob ein Fehler angezeigt wird oder nicht. Wenn ein Fehler angezeigt wird, beheben Sie alle. Jetzt erstellen und erneut ausführen, um alle Fehler zu beheben. Dadurch wird das aapt2-Problem behoben, ohne dass das Android-Gradle-Plugin auf 3.2.0 geändert wird.
Wenn zweitens kein projektbezogener Fehler im Build-Protokoll angezeigt wird, der aapt2-Fehler weiterhin angezeigt wird, können Sie ihn beheben, indem Sie die folgenden Schritte ausführen.
Aktualisieren Sie Ihr Android-Gradle-Plugin in Ihrer build.gradle
-Datei auf Projektebene wie folgt:
classpath 'com.Android.tools.build:gradle:3.2.0-alpha13'
Jetzt Android.enableAapt2=true
aktualisieren. Dann überprüfe und baue dein Projekt.
Jeder dieser Schritte sollte funktionieren, um aapt-bezogene Probleme zu beheben.
Diese Fehlermeldung (AAPT2-Fehler: Überprüfen Sie die Protokolle auf Details ) Ist nicht hilfreich, da Sie nicht wissen, was das eigentliche Problem ist.
In meinem Fall lag es an einer fehlenden XML-Ressource-Datei.
error: failed linking file resources.
org.gradle.tooling.BuildException: Failed to process resources, see aapt output above for details.
Ich habe es nur herausgefunden, weil ich die Änderungen in der XML-Datei aufgehoben habe, und diesmal habe ich eine hilfreichere Nachricht erhalten:
error: resource drawable/ic_filter_off (aka com.xxx:drawable/ic_filter_off) not found.
Message{kind=ERROR, text=error: resource drawable/ic_filter_off (aka com.xxx:drawable/ic_filter_off) not found., sources=[C:\code\xxx\app\src\main\res\layout\app_bar_main.xml:69], original message=, tool name=Optional.of(AAPT)}
Ich habe dieses Problem gelöst, indem ich classpath 'com.Android.tools.build:gradle:3.2.1'
und distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.Zip
heruntergestuft habe.
Fügen Sie build.gradle auf App-Ebene hinzu AaptOptions { cruncherEnabled = false }
Ich hatte dieses Problem
AAPT2-Fehler: Überprüfen Sie die Protokolle auf Details
weil ich Anführungszeichen(')
zu meiner String-Datei hinzugefügt habe, ohne Backslash(\)
zu verwenden
fehlertext
<string name="no_internet">You don't have internet connection </string>
fester Text
<string name="no_internet">You don\'t have internet connection </string>
aktivieren Sie daher das Sonderzeichen, das Ihrer Zeichenfolgendatei korrekt hinzugefügt wurde
In meinem Fall wurde das Problem behoben, indem der bereits vorhandene Build-Ordner entfernt und erneut versucht wurde.
Ich bin auf dasselbe Problem gestoßen, habe auf Google gesucht, viele Lösungen ausprobiert, keine hat funktioniert.
Bis ich den goldenen Schlüssel zur Lösung gefunden habe: ./gradlew assembleDebug
.
Versuchen Sie diesen Befehl in git bash
, die Konsole wird genau sagen, welche Zeile Fehler hat.
Dann verbessern Sie es und führen den Befehl erneut aus, bis die Kompilierung erfolgreich ist.