Android Studio – 如何增加分配的堆大小
我已经使用Android Studio 3个月了,其中一个应用程序已经变得相当大。 程序右下angular显示的内存使用情况表明,我分配的堆最大为494M。
当我开始更改XML文件时,我的内存使用情况很快就达到了上限,IDE崩溃,出现像这样的Out Of Memory错误。
我试图使用这个增加堆大小,但到目前为止没有效果。
我看了几十篇关于如何增加堆大小的文章和其他问题,但他们的答案都没有工作。 无论我对VMOPTIONS或IDE设置做什么,堆大小都不会增加。 我相信我正在为VMOPTIONS编辑正确的文件,因为如果我故意给它一个无效的命令Android Studio抱怨它,并不会启动。
我正在使用Windows 7 – 64位,并有16GB的RAM。 有谁有Android Studio的这个问题? 你能修好吗?
打开位于/Applications/Android\ Studio.app/Contents/bin/studio.vmoptions
文件将内容更改为
-Xms128m -Xmx4096m -XX:MaxPermSize=1024m -XX:ReservedCodeCacheSize=200m -XX:+UseCompressedOops
Xmx
指定Java虚拟机(JVM)的最大内存分配池,而Xms
指定初始内存分配池。 您的JVM将以Xms
内存量启动,并且将能够使用最多Xmx
的内存量。
保存studio.vmoptions
文件并重新启动Android Studio。
更多在这个职位 。
———-编辑———-
Android Studio 2.0,您可以通过访问“编辑自定义VM选项”从帮助菜单中创build/编辑此文件。
或者,你可以去你的android-studio\bin
文件夹,并在studio.exe.vmoptions
或studio64.exe.vmoptions
文件中更改这些-Xmx和-Xms值(取决于你运行的是哪个版本)。
我查看了我的环境variables,并有一个名为_JAVA_OPTIONS
的系统variables,其值为-Xms256m -Xmx512m
,将其更改为-Xms256m -Xmx1024m
,最大堆大小相应增加。
您不应该在IDE安装目录中编辑任何文件。 相反,您可以通过在以下目录中创build自己的.properties或.vmoptions文件来自定义属性。 (这在以前的某些平台上是可行的,但是它需要你复制和改变文件的全部内容,而最新的改变现在这些属性是相加的,这样你就可以设置你所关心的属性,其余的将使用IDE安装中的默认值)。
注意:从Android Studio 2.0开始,您可以通过访问“帮助”菜单中的“编辑自定义VM选项”文件来创build/编辑此文件。
http://tools.android.com/tech-docs/configuration
在下一个Google文档之后,我增加了自己的记忆:
http://tools.android.com/tech-docs/configuration
默认情况下,Android Studio分配的最大值为750Mb,我更改为2048Mb。
我试过谷歌描述,但对我来说,它唯一的工作是使用环境variables。 我将描述我所做的:
首先我创build了一个我称为.AndroidStudioSettings的目录,
-
mkdir .AndroidStudioSettings
然后我创build了一个名为studio.vmoptions的文件,并在该文件中放入以下内容:
-Xms256m -Xmx2048m -XX:MaxPermSize=512m -XX:ReservedCodeCacheSize=128m -XX:+UseCompressedOops
然后,我在.profile文件中添加了STUDIO_VM_OPTIONS环境variables:
-
export STUDIO_VM_OPTIONS=/Users/youruser/.AndroidStudioSettings/studio.vmoptions
然后我重新加载我的.profile:
-
source ~/.profile
最后我打开Android Studio:
-
open /Applications/Android\ Studio.app
现在,您可以看到使用状态栏 ,Android Studio有超过2000 MB的可用空间:
你可以根据你的需要定制你的值,在我的情况下2048Mb就足够了。
注意: 我现在不是这个post的答案,但也许这对一些正在寻找的人是有帮助的。
如果这不适用于您,请尝试在Mac上查看是否可以帮助您,在Android Studio的最新版本中,studio.vmoptions位于Applications文件夹中的AndroidStudio.app内。
所以右键单击或按Ctrl键点击你的AndroidStudio.App,然后select显示包的内容studio.vmoptions是在:
内容/斌/ studio.vmoptions
replace或改变它,你会得到所有你需要的RAM。
问候。
现在有很多答案已经过时。 最近更改Android Studio的堆大小的所需方法已更改。
用户现在应该在以下目录之一中创build自己的vmoptions文件;
Windows: %USERPROFILE%\.{FOLDER_NAME}\studio64.exe.vmoptions
Mac: ~/Library/Preferences/{FOLDER_NAME}/studio.vmoptions
Linux: ~/.{FOLDER_NAME}/studio.vmoptions and/or ~/.{FOLDER_NAME}/studio64.vmoptions
新创build的*.vmoptions
文件的内容应该是:
-Xms128m -Xmx750m -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=96m -XX:+UseCompressedOops
将RAM分配更改-XmX750m
增加到另一个值。
完整的说明可以在这里find: http : //tools.android.com/tech-docs/configuration
如果你使用的是MAC BOOK ,这个选项可以在应用程序 – > 右键单击Android Studio,然后selectShow Package contents – > bin 。
要么
打开-e /Applications/Android\ Studio.app/Contents/bin/studio.vmoptions
然后增加Xmx
值
-Xms128m -Xmx2048m -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=64m -XX:+UseCodeCacheFlushing -XX:+UseCompressedOops
现在你的Android Studio将超快速。
我尝试了_JAVA_OPTIONS的东西,但它仍然不工作。
最后,对我有用的是:
- 启动studio64.exe而不是studio.exe(我有一个64位的机器)。
- 在“studio64.exe.vmoptions”中添加/更改以下值:
-Xms2048m -Xmx2048m -XX:MaxPermSize=1024m -XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=utf-8
在Windows 7上, [INSTALL-LOCATION]\bin
的configuration文件似乎被忽略。 根据以下Google文档,要修改的文件应该在这里: %USERPROFILE%\.AndroidStudio\studio[64].exe.vmoptions
http://tools.android.com/tech-docs/configuration
奇怪的是,没有这样的文件,从开发人员网站安装干净的Android Studio 1.1安装。 他们在旧的(被忽略的)位置。 一旦我复制文件(在我的情况下studio.exe.vmoptions
)并修改它,更改是尊重。
然而,乐趣并不止于此。 -Xmx
值可能与系统内存量有关。 我刚刚把我的机器内存从4Gb提高到了16Gb,并假设我可以将-Xmx
设置为2048m
,但是我发现如果将其设置为大于1500m,
Android Studio将默默无法启动, 。 我在路上有更多的内存,所以看看我能否在这个时候增加价值会很有意思。
我希望这些额外的信息是有帮助的。 虽然上面的所有回答无疑都是真实的(并且可能仍然存在于某些环境中),但我发现这是增加AS所使用的内存的唯一方法。
我在Windows 7/8(64位)上发现,从Android Studio 1.1.0开始:
[INSTALL_DIR]\bin\studio64.exe.vmoptions
(如果存在),否则将始终回退到%USERPROFILE%.\AndroidStudio\studio[64].exe.vmoptions
如果您想从%USERPROFILE%.\AndroidStudio\studio[64].exe.vmoptions
,只需删除安装目录中的设置即可。
进入Gradle脚本 – > local.properties并粘贴
`org.gradle.jvmargs=-XX\:MaxHeapSize\=512m -Xmx512m`
,如果你想改变它为512.希望它的作品!
您不应该修改bin / studio.exe.vmoptions文件,这将在应用更新补丁期间进行validation。
解决scheme在这里http://tools.android.com/tech-docs/configuration
将该文件复制到以下位置,然后将-Xmx1280m更改为所需的任何内容。
视窗:
%USERPROFILE%\.{FOLDER_NAME}\studio.exe.vmoptions
和/或%USERPROFILE%\.{FOLDER_NAME}\studio64.exe.vmoptions
%USERPROFILE%\.{FOLDER_NAME}\idea.properties
苹果电脑:
~/Library/Preferences/{FOLDER_NAME}/studio.vmoptions
~/Library/Preferences/{FOLDER_NAME}/idea.properties
Linux的:
~/.{FOLDER_NAME}/studio.vmoptions
和/或~/.{FOLDER_NAME}/studio64.vmoptions
~/.{FOLDER_NAME}/idea.properties
如果这个Xms
和Xmx
内存低的问题发生在我身上的时候,我正在使用XML。 我也尝试增加这个记忆,只是发现它再花一点时间才会发生。
在得到非常沮丧之后,几乎决定将所有当前的项目转换回到我不想做的Eclipse,我找出了导致它的原因,并且能够重复这个失败并且每次都阻止它。
在(文本视图)中编辑XML并使用“预览”渲染视图时,每次都会导致内存丢失。 closures“预览”并使用“devise”选项卡来渲染屏幕,我可以整天使用Android Studio,而不会崩溃。
我希望这可以被固定好,因为在编辑XML时使用“预览”渲染将是非常好的,但是我很高兴我可以继续使用Android Studio。
打开studio.vmoptions并更改JVM选项
studio.vmoptions位于/ Applications / Android \ Studio.app/bin/studio.vmoptions(Mac OS)。 在我的机器上,它看起来像
-Xms128m -Xmx800m -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=64m -XX:+UseCodeCacheFlushing -XX:+UseCompressedOops
改成
-Xms256m -Xmx1024m -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=64m -XX:+UseCodeCacheFlushing -XX:+UseCompressedOops
然后重新启动Android Studio
查看更多Android Studio网站
可以帮助解决这个问题的人:
我编辑studio64.exe.vmoptions
文件,但未能保存。
所以我用Notepad ++以Run as Administrator
模式打开这个文件,然后保存成功。
-Xms256m -Xmx2048m -XX:MaxPermSize=512m -XX:ReservedCodeCacheSize=128m -XX:+UseCompressedOops
如果通过更改或创build.studio.exe.vmoptions
不起作用,请尝试更改gradle.properties
文件并根据需要更改堆大小。
它真的在我的Windows 7上安装了4Gb RAM和Android Studio 2.2。
正常工作,没有错误,并显示“完成Gradle Sync”