我在 Android Studio 中有一个多模块 (>20) 项目。我面临的问题是,每当任何模块的 build.gradle 文件发生变化或添加新模块时,Android Studio 都会要求进行 gradle 同步,这需要非常高的时间(~12-15 分钟)和内存( 5GB 的顺序)。我想知道为什么会这样?有没有办法找出 gradle sync 期间发生的情况?是否有运行 gradle sync 的终端命令? 请帮忙!
最佳答案
我一直在尝试弄清楚在 gradle sync 期间实际发生了什么,以及如何改进 gradle sync 计时。我总结了我在这个答案中发现的内容。
- Gradle 同步是 Android Studio 的一项功能。它的唯一目的是根据项目中的 build.gradle 文件更新 Android Studio 中的项目模型。例如,您可能会注意到应用程序中新创建的模块显示为一个目录,但在 gradle sync 之后(假设您有适合该模块的 build.gradle,它指向 java 源、测试、资源等)该模块是在 Android Studio 中显示为一个库(在您的模块目录中带有一个图标)。您可以引用有用的答案here .
- 在一个包含大量模块的项目中,您可能会注意到 gradle sync 过程会消耗大量时间和内存。我不完全理解这背后的原因,但是将 vmstudio.options 文件更改为以下配置在一定程度上帮助我改善了 gradle 同步时间:
-Xms512m
-Xmx4g
-XX:MaxPermSize=2g
-XX:ReservedCodeCacheSize=512m
-XX:+UseCompressedOops
我希望这是有用的!
关于android - 如何获取 gradle sync 的详细消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32503517/