Gradle-Fehler: Der Schreibzugriff über den Event-Dispatch-Thread ist nur in Android Studio zulässig


120

Nach dem Update von Android Studio auf Version 2.2 (unter Windows 10) und irgendwie am nächsten Morgen erhielt ich einen solchen Fehler, als gradle auf einem Projekt aufbaute:

Der Schreibzugriff ist nur über den Event-Dispatch-Thread zulässig

Trotzdem hat der Befehl gradlew -build erfolgreich funktioniert und abgeschlossen. Ich habe typische Android-Entwickler des WTF-Reparatursatzes ausprobiert: Build erstellen, Caches ungültig machen, Build-Ordner entfernen, Gradle-Ordner entfernen, verschiedene Gradle-Einstellungen ausprobieren, sogar Android Studio neu installieren und nichts half.

Ich habe diese Frage nur erstellt, um meine Erfahrungen mit der Community zu teilen, da ich zwei Stunden damit verschwendet habe.


Legen Sie das SDK nur im Andoid Studio ab.
Ja Mal Ch

Antworten:


413

Das Problem wurde daher dadurch geschlossen, dass Android Studio mit meiner installierten JDK-Version in Konflikt stand. Daher wurde es behoben, als ich den JDK-Speicherort (Datei → Projektstruktur → SDK-Speicherort) überprüfte, das Kontrollkästchen "Eingebettetes JDK verwenden" aktivierte und den JDK-Speicherort auf "Pfad zu" setzte Android Studio '\ Android Studio \ jre


1
Hat bei mir gut funktioniert! Vielen Dank!
Waseefakhtar

1
Perfekte Antwort! Arbeitete sofort. Wenn ich beim Lesen dieser Antwort auf "Projektstruktur öffnen" klickte, wurde im Dialogfeld "Projektstruktur" am unteren Rand des Dialogfelds die Meldung "Bitte wählen Sie ein gültiges JDK-Verzeichnis aus" angezeigt, zusammen mit einer Navigationsschaltfläche, die beim Klicken zum JDK navigierte Ortstextfeld ebenfalls. Ich verwende derzeit Android Studio 3.1.3 auf meinem Ubuntu. Vielen Dank!
Sam

11

Das Problem trat auf, wenn ein Konflikt zwischen Android Studio und der installierten JDK-Version auftrat. Gehen Sie zu (Datei -> Projektstruktur -> SDK-Speicherort), aktivieren Sie das Kontrollkästchen "Eingebettetes JDK verwenden" und setzen Sie den JDK-Speicherort auf "Pfad zu Android Studio" \ Android Studio \ jre :) Einfach


1

das hat bei mir nicht funktioniert, ich habe einen 'gradle clean build'-Befehl ausgeführt, ich habe herausgefunden, dass es einen Konflikt in einer Zeile im gradle gibt, habe ihn gelöscht und das Projekt synchronisiert ( wie in diesem Bild )

Geben Sie hier die Bildbeschreibung ein


1
Dies ist, was für mich für diese Frage funktioniert hat, es kann anderen helfen, die das gleiche Problem für die gleiche Frage hatten
Ryuzaki

0

Mein Problem war, dass ich das SDK entfernt hatte, das ich beim Aufräumen des Festplattenspeichers verwendet hatte.

Um dies zu beheben, überprüfen Sie zunächst, welche SDKs Sie installiert haben, oder installieren Sie eines unter Extras> SDK-Manager.

Sie können dann compileSdkVersion und targetSdkVersion in app build.gradle auf Ihre installierte sdk-Version ändern.

Andernfalls können Sie einfach das von Ihnen verwendete SDK neu installieren.


-1

Gehen Sie in Android Studio 3.2.1 zu Datei -> Projektstruktur -> SDK-Speicherort und aktivieren Sie das Kontrollkästchen "Embedded JDK verwenden (empfohlen)". Geben Sie hier die Bildbeschreibung ein

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.