Ich versuche, mein Android Studio Gradle-Projekt (das hauptsächlich Kotlin-Code enthält) neu zu erstellen, aber es hat UnableToDeleteFileException
während des Reinigungs- / Wiederherstellungsprozesses Folgendes ausgelöst:
Execution failed for task ':app:clean'.
> Unable to delete file: C:\Users\User\KotlinGameEngine\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\23.0.1\jars\classes.jar
Dies begann, nachdem ich versucht hatte, die Paketstruktur meines Projekts zu ändern. Leider habe ich die Quellordner umbenannt und verschoben, anstatt sie über Android Studio umzugestalten, was eine schlechte Idee war.
Ich habe den ganzen Tag nach einer Lösung für dieses Problem gesucht, und dies sind die Dinge, die ich erfolglos versucht habe:
- Gradle-Synchronisierung durchführen;
- Neuinstallation von Java JRE und Java SDK;
- Neuinstallation der neuesten Version von Android Studio (1.4);
- Zurücksetzen auf die vorherige AS-Version (1.3);
- Ungültigmachen des AS-Cache und Neustart;
- Löschen der Verzeichnisse
gradle
und.gradle
im Projektverzeichnis; - Löschen des
.gradle
Verzeichnisses in meinem Benutzerverzeichnis; - Laufen
gradlew clean
vom AS-Terminal; - Manuelles Kopieren der Quellen in ein neues Projekt (seltsam, dass es irgendwie projektübergreifend bestehen bleibt ...)
Dinge, die ich mit ein wenig Erfolg versucht habe, aber nur noch einmal bereinigen und neu erstellen lassen, bevor der Fehler erneut auftritt:
- Schließen von AS, manuelles Löschen der Build-Dateien und erneutes Öffnen;
- Beenden des
java.exe
Prozesses, während AS ausgeführt wird (dies könnte technisch jedes Mal durchgeführt werden, ist jedoch langwierig und verlangsamt den Erstellungsprozess)
Es scheint also, dass das Kompilieren des Java-Prozesses die Build-Dateien aus irgendeinem Grund sperrt, aber möglicherweise auch mit Kotlin zu tun hat. Ich habe ein (ausgereifteres) Java-Android-Projekt, an dem ich arbeite, obwohl ich diesen Fehler beim Bereinigen nicht reproduzieren kann. Es scheint nur meinem Kotlin-Projekt zu passieren.
Aktualisieren:
Ich habe festgestellt, dass das Problem durch das Kotlin Android-Plugin verursacht wird. Das Problem verschwindet, wenn ich es apply plugin: 'kotlin-android'
aus der Moduldatei entferne, build.gradle
und tritt wieder auf, wenn ich es erneut einfüge. Fühlen Sie sich frei, einen Einblick in diese zu geben.
Update 2:
Das letzte Update ist nicht die Ursache. Ich habe festgestellt, dass die Neuerstellung und Bereinigung fehlschlägt, wenn ein Projekt eine Kotlin-Datei enthält. Es schlägt weiterhin fehl, selbst wenn alle Kotlin-Dateien entfernt wurden, bis der Hintergrund-Java-Prozess beendet wird, was bedeutet, dass die Build-Dateien gesperrt sind. Ich habe hier einen Fehler mit weiteren Details und Schritten zur Reproduktion des Fehlers eingereicht: KT-9440