657 Stimmen

Wie leere ich den Gradle-Cache?

Ich versuche Android Studio zu benutzen, und beim ersten Start dauert es etwa 45 Minuten zu kompilieren... Wenn ich die Anwendung nicht beende, ist es in Ordnung - jede nachfolgende Kompilierung/Ausführung der App dauert ungefähr 45 Sekunden.

Ich habe versucht, einige meiner Caches zu überprüfen: Es gibt einen .gradle/caches Ordner in meinem Home-Verzeichnis und er enthält 123 MB.

Es gibt auch einen .gradle Ordner in meinem Projektordner... eines der taskArtifacts war etwa 200 MB groß. Ich habe Angst, sie einfach zufällig zu löschen. Welche Teile der Ordner können sicher gelöscht werden?

Gibt es eine bessere Erklärung dafür, warum mein Android Studio eine Ewigkeit braucht, um die gradle assemble Aufgabe beim ersten Laden der Anwendung auszuführen?

Muss ich auch den IntelliJ-Cache leeren?

704voto

Bao Le Punkte 14832

Gradle-Cache befindet sich

  • Auf Windows: %USERPROFILE%\.gradle\caches
  • Auf Mac / UNIX: ~/.gradle/caches/

Sie können zu diesen Verzeichnissen navigieren und sie manuell löschen oder

rm -r $HOME/.gradle/caches/

auf einem UNIX-System ausführen. Das Ausführen dieses Befehls erzwingt auch das Herunterladen von Abhängigkeiten.


AKTUALISIEREN

Löschen des Build-Cache von Android aktuelles Projekt

HINWEIS: Android Studios File > Invalidate Caches / Restart löscht nicht den Android-Build-Cache, daher müssen Sie ihn separat bereinigen.

Auf Windows:

gradlew cleanBuildCache

Auf Mac oder UNIX:

./gradlew cleanBuildCache

UPDATE 2

Dieser Artikel Setzen Sie Ihr Android Studio auf Diät gibt weitere Details zu den Android Studio-Caches

420voto

Opal Punkte 77538

Wie @Bradford20000 in den Kommentaren angemerkt hat, könnte es auch eine gradle.properties-Datei sowie globale Gradle-Skripte unter $HOME/.gradle geben. In einem solchen Fall muss besondere Aufmerksamkeit beim Löschen des Inhalts dieses Verzeichnisses gegeben werden.

Das Verzeichnis .gradle/caches enthält den Gradle Build-Cache. Wenn Sie also einen Fehler bezüglich des Build-Caches haben, können Sie ihn löschen.

Die --no-build-cache-Option führt Gradle ohne den Build-Cache aus.

Dämon auf MS Windows Wenn Sie Windows verwenden, müssen Sie den Dämon beenden, bevor Sie diese Verzeichnisse löschen können. Siehe Kill all Gradle Daemons Regardless Version? für weitere Informationen.

124voto

ceph3us Punkte 7061

UPDATE

cleanBuildCache funktioniert nicht mehr.

Das Android Gradle-Plugin nutzt jetzt die Gradle-Cache-Funktion
https://guides.gradle.org/using-build-cache/

UM DEN CACHE ZU LÖSCHEN

Löschen Sie das Cache-Verzeichnis, um mögliche Überbleibsel aus früheren Builds zu vermeiden

 rm -rf $GRADLE_HOME/caches/build-cache-*

https://guides.gradle.org/using-build-cache/#caching_android_projects

Weitere Abweichungen: siehe hier (einschließlich Änderungen).


\=== OBSOLETE INFORMATIONEN ===

Neueste Lösung mit Hilfe der Gradle-Aufgabe:

cleanBuildCache

Verfügbar über das Android-Plugin für Gradle, Version 2.3.0 (Februar 2017)

Abhängigkeiten:

  1. Gradle 3.3 oder höher.
  2. Build Tools 25.0.0 oder höher.

Weitere Informationen unter:
https://developer.android.com/studio/build/build-cache.html#clear_the_build_cache

Hintergrund

Build-Cache
Speichert bestimmte Ausgaben, die das Android-Plugin beim Erstellen Ihres Projekts generiert (wie nicht verpackte AARs und vorab dexerierte Remote-Abhängigkeiten). Ihre sauberen Builds sind viel schneller, wenn Sie den Cache verwenden, da das Bausystem einfach diese zwischengespeicherten Dateien in nachfolgenden Builds wiederverwenden kann, anstatt sie neu zu erstellen. Projekte, die das Android-Plugin 2.3.0 und höher verwenden, nutzen standardmäßig den Build-Cache. Weitere Informationen finden Sie unter Verbessern Sie die Build-Geschwindigkeit mit Build-Cache.

HINWEIS: Die cleanBuildCache-Aufgabe ist nicht verfügbar, wenn Sie den Build-Cache deaktivieren.

VERWENDUNG

Windows:

gradlew cleanBuildCache

Linux / Mac:

gradle cleanBuildCache

Android Studio / IntelliJ:

gradle tab (default on right) select and run the task or add it via the configuration window 

HINWEIS: gradle / gradlew sind systemspezifische Dateien mit Skripten. Bitte sehen Sie sich die entsprechenden Systeminformationen an, wie die Skripte ausgeführt werden:

122voto

rresino Punkte 1317

Passen Sie auf den Gradle-Daemon auf, Sie müssen ihn stoppen, bevor Sie Gradle löschen und neu ausführen.

Stoppen Sie zuerst den Daemon:

./gradlew --stop

Löschen Sie den Cache mit:

rm -rf ~/.gradle/caches/

Führen Sie Ihre Kompilierung erneut aus

16voto

Antonio Cord Punkte 280

Mein ~/.gradle/caches/ Ordner war 14G groß.

Nach Verwendung der folgenden Lösung verkleinerte er sich von 14G auf 1,7G.

$ rm -rf ~/.gradle/caches/transforms-*

$ rm -rf ~/.gradle/caches/build-cache-*

Bonus:

Mit diesem Befehl wird dir im Detail der verwendete Cache-Speicherplatz angezeigt

$ sudo du -ah --max-depth 1 ~/.gradle/caches/ | sort -hr

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X