当前位置:  开发笔记 > Android > 正文

如何清除gradle缓存?

如何解决《如何清除gradle缓存?》经验,为你挑选了4个好方法。

我正在尝试使用Android Studio,第一次启动时,编译需要45分钟......如果我不退出应用程序,那就没关系 - 每次后续编译/运行应用程序都需要像45秒.

我试图检查一些我的缓存:.gradle/caches我的主目录中有一个文件夹,它就像123 MB大.

.gradle我的项目文件夹中还有一个文件夹...其中一个taskArtifacts就像是200 MB.我害怕只是随意地将它们两者核对.删除文件夹的哪些部分是安全的?

有没有更好的解释为什么我的Android Studio gradle assemble在第一次加载应用程序时将永远运行任务?

我是否还必须清除intellij缓存?



1> Bao Le..:

Gradle缓存位于

在Windows上: %USER_HOME%\.gradle/caches/

在Mac/Unix上: $HOME/.gradle/caches/

您可以浏览到这些目录并手动删除或运行

rm -rf $HOME/.gradle/caches/

在Unix系统上.运行此命令也将强制下载依赖项.

更新2: 清除当前项目的Android构建缓存

注意:Android Studio的文件| 无效的缓存/重新启动不会清除Android构建缓存,因此您必须单独清除它.

在Windows上:

gradlew cleanBuildCache

在Mac或Linux上:

./gradlew cleanBuildCache


这并没有清除maven依赖的缓存.我从maven存储库中删除了库并使Android Studio缓存失效,但该项目仍然构建.这意味着不清除maven依赖项的gradle缓存.
您描述的方式只会清除主项目中的缓存及其项目依赖项,但库依赖项完好无损.您描述了如何清理AndroidStudio的缓存,而不是gradle的缓存.

2> Opal..:

您可以安全地删除.gradle项目目录下的整个文件夹.每次运行任务时都会重新创建它.同样适用.gradle于主目录下.它也将被重新创建,但必须再次下载整个依赖项 - 这非常耗时.

正如我在各个地方看到的那样,通过网络进行Android开发的速度很慢,人们抱怨它.不知道究竟是什么原因 - 这就是它的工作原理.

我不认为低性能是因为大文件夹.实际上他们帮助它更快.

正如@ Bradford20000在评论中指出的那样,可能存在一个gradle.properties文件以及位于其下的全局gradle脚本$HOME/.gradle.在这种情况下,删除此目录的内容时必须特别注意.缓存目录包含Gradle构建缓存.因此,如果您有任何错误,可以删除它.它在.gradle/caches


需要注意的一点是,如果主目录中的.gradle文件夹中有gradle.properties文件,则不需要删除整个文件夹.通常,只需删除.gradle/caches即可让Gradle重新下载所有依赖项.

3> ceph3us..:

使用 gradle任务的最新解决方案

cleanBuildCache

可通过Android插件获取Gradle,修订版2.3.0(2017年2月)

依赖关系:

    Gradle 3.3或更高.

    构建工具25.0.0或更高版本.

更多:

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

背景

构建缓存:

存储Android插件在构建项目时生成的某些输出(例如未打包的AAR和预定义的远程依赖项).使用缓存时,干净的构建要快得多,因为构建系统可以在后续构建期间简单地重用这些缓存的文件,而不是重新创建它们.使用Android插件2.3.0及更高版本的项目默认使用构建缓存.要了解更多信息,请阅读使用Build Cache提高构建速度.

注意:如果禁用构建缓存,则cleanBuildCache任务不可用.

用法:

视窗

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 

**gradle/gradlew是包含脚本的系统特定文件 - 请参阅系统信息如何执行脚本

    linux - https://www.cyberciti.biz/faq/howto-run-a-script-in-linux/

    windows - https://technet.microsoft.com/en-us/library/bb613481(v=vs.85).aspx

    mac https://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/MacAutomationScriptingGuide/index.html



4> 小智..:

小心gradle守护程序,您必须先停止它,然后再清除并重新运行gradle。

停止第一个守护程序:

./gradlew --stop

使用以下命令清除缓存:

rm -rf ~/.gradle/caches/

再次运行编译

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有